Mysql學(xué)習(xí)筆記1
來源:懂視網(wǎng)
責(zé)編:小采
時(shí)間:2020-11-09 16:29:42
Mysql學(xué)習(xí)筆記1
Mysql學(xué)習(xí)筆記1:一次性插入多條記錄: insert into tablename(field1,field2,…,fieldn) values(record1_value1,record1_value2,…,record1_valuen),(…) having和where的區(qū)別在于,having是對聚合后的結(jié)果進(jìn)行條件的過濾,而where是在聚合前就對記錄進(jìn)行
導(dǎo)讀Mysql學(xué)習(xí)筆記1:一次性插入多條記錄: insert into tablename(field1,field2,…,fieldn) values(record1_value1,record1_value2,…,record1_valuen),(…) having和where的區(qū)別在于,having是對聚合后的結(jié)果進(jìn)行條件的過濾,而where是在聚合前就對記錄進(jìn)行

一次性插入多條記錄: insert into tablename(field1,field2,…,fieldn) values(record1_value1,record1_value2,…,record1_valuen),(…) having和where的區(qū)別在于,having是對聚合后的結(jié)果進(jìn)行條件的過濾,而where是在聚合前就對記錄進(jìn)行過濾,如果邏輯允許
- 一次性插入多條記錄:
insert into tablename(field1,field2,…,fieldn)
values(record1_value1,record1_value2,…,record1_valuen),(…)
- having和where的區(qū)別在于,having是對聚合后的結(jié)果進(jìn)行條件的過濾,而where是在聚合前就對記錄進(jìn)行過濾,如果邏輯允許,我們盡可能用where先過濾記錄,這樣因?yàn)榻Y(jié)果集減小,將對聚合的效率大大提高,最后再根據(jù)邏輯看是否用having進(jìn)行再過濾。
- 內(nèi)連接僅選出兩張表中互相匹配的記錄,而外連接會選出其他不匹配的記錄,外連接分為做連接和右連接。
- 記錄聯(lián)合
union和union all的使用,select … [union] | [union all] select …
區(qū)別:前者去重,后者不去重。
- int(5),括號里面指的是數(shù)字的寬度,如果小于5位就會用0填充,默認(rèn)不顯示,一般通過zerofill配合使用。默認(rèn)是11。此外,當(dāng)數(shù)值超過設(shè)定的參數(shù)后,并不會發(fā)生截?cái)嗪蛨?bào)錯(cuò)。
- 對于小數(shù)的表示,MySQL分為兩種方式:浮點(diǎn)數(shù)和定點(diǎn)數(shù)。浮點(diǎn)數(shù)包括float(單精度)和double(雙精度),而定點(diǎn)數(shù)則只有decimal一種表示。(M,D)的用法是非標(biāo)準(zhǔn)用法,如果要用于數(shù)據(jù)庫的遷移,則最好不要這么使用。float和double在不指定精度時(shí),默認(rèn)會按照實(shí)際的精度(由實(shí)際的硬件和操作系統(tǒng)決定),否則會四舍五入。而decimal在不指定精度時(shí),默認(rèn)的整數(shù)位為10,默認(rèn)的小數(shù)位為0。如果用來表示貨幣等精度高的數(shù)據(jù)通常采用decimal。
- TIMESTAMP類型是4個(gè)字節(jié),存儲的時(shí)候是以數(shù)字值存儲的,顯示為“YYYY-MM-DD HH:MM:SS”如果經(jīng)常插入或者更新日期為當(dāng)前系統(tǒng)時(shí)間,則采用TIMESTAMP。如果想要獲得數(shù)字值,應(yīng)在TIMESTAMP列添加“+0”。此外,還有一個(gè)最重要的特點(diǎn)是,它與時(shí)區(qū)有關(guān)。但它有一個(gè)缺陷,取值范圍小,局限于19700101080001到2038年的某一天。
- char和varchar類型區(qū)別:varchar是可變字符串,長度范圍是0~255(mysql5.0.3版本以前)或者65535(5.0.3以后)。在檢索的時(shí)候,CHAR列刪除了尾部的空格,而VARCHAR則保留這些空格。
- 在使用concat(s1,s2,…,sn)函數(shù)拼接字符串時(shí)注意,任何字符串與NULL進(jìn)行連接的結(jié)果都將是NULL。
- STRCMP(s1,s2)函數(shù)是比較字符串的ASCII碼值的大小。如果后者比前者小,則-1,相等則為0,否則為1。
- TRUNCATE(x,y)返回?cái)?shù)字x截?cái)酁閥位小數(shù)的結(jié)果,但僅僅是截?cái)啵凰纳嵛迦耄琑OUND(x,y)則四舍五入。如TRUNCATE(1.235,2)得到1.23。
12.
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
Mysql學(xué)習(xí)筆記1
Mysql學(xué)習(xí)筆記1:一次性插入多條記錄: insert into tablename(field1,field2,…,fieldn) values(record1_value1,record1_value2,…,record1_valuen),(…) having和where的區(qū)別在于,having是對聚合后的結(jié)果進(jìn)行條件的過濾,而where是在聚合前就對記錄進(jìn)行