(六)子查詢(xún)與連接


1、創(chuàng)建練習(xí)使用的數(shù)據(jù)表

goods_id —— 商品編號(hào)
goods_name —— 商品名稱(chēng)
goods_cate —— 商品分類(lèi)
brand_name —— 商品品牌
goods_price —— 商品價(jià)格
is_show —— 商品是否上架,默認(rèn)為在售
is_saleoff —— 商品是否售罄,默認(rèn)為否

由于商品中有中文字符出現(xiàn),因此需要首先設(shè)置客戶(hù)端顯示數(shù)據(jù)的編碼為“gbk”,但實(shí)際數(shù)據(jù)庫(kù)中的存儲(chǔ)數(shù)據(jù)的編碼格式仍然是之前設(shè)定的“utf8”,不會(huì)受影響。

此次舉例共填入了22條記錄,手動(dòng)輸入過(guò)于繁瑣,因此提供源碼,點(diǎn)擊下載使用。


2、子查詢(xún)簡(jiǎn)介

子查詢(xún)(Subquery)是指出現(xiàn)在其他SQL語(yǔ)句內(nèi)的SELECT子句。

例如:
SELECT*FROM t1 WHERE col1 = ( SELECT col2 FROM t2);
其中“SELECT*FROM t1”被稱(chēng)為Outer Query/Outer Statement,即外層查詢(xún);
而“SELECT col2 FROM t2”被稱(chēng)為SubQuery,即子查詢(xún)。

  • 子查詢(xún)指嵌套在查詢(xún)內(nèi)部,且必須始終出現(xiàn)在圓括號(hào)內(nèi);
  • 子查詢(xún)可以包含多個(gè)關(guān)鍵字或條件,例如:DISTINCT、GROUP BY、ORDER BY、LIMIT、函數(shù)等;
  • 子查詢(xún)的外層查詢(xún)可以是:SELECT、INSERT、UPDATE、SET、DO。
    注意:這里的“外層查詢(xún)”并不僅僅指“SELECT”查找,而是所有的SQL命令的統(tǒng)稱(chēng),因?yàn)镾QL語(yǔ)言被稱(chēng)為是結(jié)構(gòu)化查詢(xún)語(yǔ)言,包括增、刪、改、查等。
  • 子查詢(xún)可以返回標(biāo)量、一行、一列或子查詢(xún)。

3、由比較運(yùn)算符引發(fā)的子查詢(xún)

語(yǔ)法結(jié)構(gòu):
operand comparison_operator subquery
比較運(yùn)算符包括:
=、>、<、>=、<=、<>、!=、<=>

查詢(xún)所有商品的平均價(jià)格,還可以對(duì)查詢(xún)的結(jié)果進(jìn)行四舍五入,保留2位小數(shù):



  在所有商品中,查詢(xún)售價(jià)大于或等于平均價(jià)格的商品,顯示其編號(hào)、名稱(chēng)及價(jià)格:



  可以看到,在查找大于等于平均價(jià)格的商品中,“5636.36”其實(shí)就是上一條SQL語(yǔ)句所求得的結(jié)果,將這兩條語(yǔ)句合并,就是子查詢(xún):

通過(guò)查詢(xún)可知在所有商品中屬于“超級(jí)本”分類(lèi)的商品共有3件,售價(jià)分別是“4999”、“4299”、“7999”。如果想使用子查詢(xún)的方式,查找售價(jià)大于“超級(jí)本”的商品,結(jié)果報(bào)錯(cuò):


出現(xiàn)錯(cuò)誤的原因是之前提到的,子查詢(xún)的返回值只能是一行,雖然要查找售價(jià)大于“超級(jí)本”價(jià)格的商品,但“超級(jí)本”的價(jià)格有3個(gè),系統(tǒng)無(wú)法得知要與哪個(gè)進(jìn)行比較,此時(shí)就需要使用ANY、SOME、ALL關(guān)鍵字來(lái)修飾比較運(yùn)算符:

語(yǔ)法結(jié)構(gòu):
operand comparison_operator ANY (subquery)
operand comparison_operator SOME (subquery)

operand comparison_operator ALL (subquery)

運(yùn)算符\關(guān)鍵字 | ANY | SOME| ALL
----|------|----

、>= | 最小值     | 最小值     | 最大值    
<、<= | 最大值 | 最大值| 最小值
= | 任意值 | 任意值|
<>、!= | | | 任意值

根據(jù)上表修改之前的SQL語(yǔ)句,例如添加“ALL”關(guān)鍵字,要求比所有的“超級(jí)本”價(jià)格都高,即大于最大值“7999”即可:



4、由[NOT] IN / EXISTS引發(fā)的子查詢(xún)

使用[NOT] IN的語(yǔ)法結(jié)構(gòu):
operand comparison_operator [NOT] IN (subquery)
= ANY 運(yùn)算符與 IN 等效;
!= ALL 或<> ALL運(yùn)算符與 NOT IN 等效。

對(duì)于上條SQL語(yǔ)句,首先修改為“!= ALL”關(guān)鍵字,即除去3款“超級(jí)本”商品,查詢(xún)剩余的全部19款商品:



  可見(jiàn)結(jié)果確實(shí)是19款:


由于篇幅限制,不便詳細(xì)展示19條結(jié)果,可自行查詢(xún)驗(yàn)證
由于篇幅限制,不便詳細(xì)展示19條結(jié)果,可自行查詢(xún)驗(yàn)證

再修改為“NOT IN”關(guān)鍵字:



  結(jié)果與之前相同:


由于篇幅限制,不便詳細(xì)展示19條結(jié)果,可自行查詢(xún)驗(yàn)證
由于篇幅限制,不便詳細(xì)展示19條結(jié)果,可自行查詢(xún)驗(yàn)證

使用[NOT] EXISTS的語(yǔ)法結(jié)構(gòu):
operand comparison_operator [NOT] EXISTS (subquery)
EXISTS:當(dāng)子查詢(xún)返回任何行時(shí),EXISTS返回TRUE,觸發(fā)外層查詢(xún);否則返回FALSE。
NOT EXISTS:與EXISTS相反。

例如,子查詢(xún)中“id”為100的商品不存在,因此不返回任何行,EXISTS返回FALSE,外層查詢(xún)?yōu)榭眨?/p>

當(dāng)查詢(xún)“id”為10的商品時(shí),可以返回結(jié)果,EXISTS返回TRUE,外層查詢(xún)?yōu)槿康?2件商品:

NOT EXISTS與EXISTS相反,當(dāng)查詢(xún)“id”為10的商品時(shí),可以返回結(jié)果,NOT EXISTS返回FALSE,外層查詢(xún)?yōu)榭?;?dāng)子查詢(xún)中“id”為100的商品不存在,不返回任何行時(shí),NOT EXISTS返回TRUE,外層查詢(xún)?yōu)槿康?2件商品:


5、使用INSERT……SELECT插入記錄

其實(shí)目前用于演示的表在實(shí)際使用中,有一個(gè)嚴(yán)重的缺陷,即重復(fù)數(shù)據(jù)過(guò)多,而且中文字符占有更多的字節(jié),會(huì)導(dǎo)致數(shù)據(jù)表使用效率降低,例如下圖所示的“筆記本配件”、“索尼”等等:



  針對(duì)上述問(wèn)題,可以使用外鍵來(lái)解決,創(chuàng)建新的數(shù)據(jù)表“tdb_goods_cates”:



  查詢(xún)“tdb_goods”表的所有記錄,并且按"類(lèi)別"分組:

將查詢(xún)的分組結(jié)果寫(xiě)入到“tdb_goods_cates”數(shù)據(jù)表中:



6、多表更新

語(yǔ)法結(jié)構(gòu)
UPDATE table_references SET col_name1 = {expr1 | DEFAULT} [,col_name2 = {expr2 | DEFAULT}……
[WHERE where_condition]

在使用多表更新時(shí),需要使用“連接”,這里先簡(jiǎn)單了解一下:

table_reference {[INNER | CROSS] JOIN | {LEFT | RIGHT} [OUTER] JOIN }
table_reference ON conditional_expr

可以理解為:
表1“table_reference”+參照關(guān)系“{[INNER | CROSS] JOIN | {LEFT | RIGHT} [OUTER] JOIN }”
+表2“table_reference”+連接條件“ON conditional_expr”

連接類(lèi)型分為:

  • INNER JOIN(內(nèi)連接)
    在MySQL中,JOIN、CROSS JOIN、INNER JOIN是等價(jià)的。
  • LEFT [OUTER] JOIN(左外連接)
  • RIGHT [OUTER] JOIN(右外鏈接)

此時(shí)需要將新創(chuàng)的“tdb_goods_cates”表中的“id”替換到原“tdb_goods”表的“類(lèi)別”中:


  對(duì)于上述SQL語(yǔ)句的簡(jiǎn)單理解是:要更新“tdb_goods”表,以?xún)?nèi)連接“INNER JOIN”的方式連接“tdb_goods_cates”表,連接的條件是“tdb_goods”表中的商品類(lèi)別“goods_cate”等于“tdb_goods_cates”表中的“cate_name”,最后將“tdb_goods”表中的商品類(lèi)別“goods_cate”更新為“tdb_goods_cates”表中的“cate_id”。

通過(guò)查詢(xún)可見(jiàn)已實(shí)現(xiàn)更新:


但對(duì)于多表更新,還存在一種更為簡(jiǎn)便的方法,目前的方法是首先創(chuàng)建數(shù)據(jù)表,之后查詢(xún)數(shù)據(jù)并寫(xiě)入,最后進(jìn)行連接更新;那么使用如下語(yǔ)句,便可將創(chuàng)建與查詢(xún)寫(xiě)入合二為一:

CREATE……SELECT
CREATE TABLE [IF NOT EXISTS] tbl_name [(create_definition,……)] select_statement
創(chuàng)建數(shù)據(jù)表的同時(shí),將查詢(xún)的結(jié)果寫(xiě)入數(shù)據(jù)表。

首先查詢(xún)“tdb_goods”表的所有記錄,并且按"品牌"分組:


此步驟僅用作展示品牌數(shù)量
此步驟僅用作展示品牌數(shù)量

之后創(chuàng)建數(shù)據(jù)表“tdb_goods_brands”并寫(xiě)入查詢(xún)數(shù)據(jù):

可見(jiàn)數(shù)據(jù)表以創(chuàng)建完成且存在記錄:


此時(shí)可以使用之前的語(yǔ)句進(jìn)行連接:


系統(tǒng)提示出錯(cuò),因?yàn)闊o(wú)法分辨兩個(gè)“brand_name”分別屬于哪一張表,此時(shí)可以在字段前添加表名來(lái)加以區(qū)分,但更常使用別名來(lái)區(qū)分,例如:

可見(jiàn)所有的類(lèi)別及品牌都已修改,雖然數(shù)字可能相同,但實(shí)際意義不同:


再來(lái)查看該數(shù)據(jù)表的結(jié)構(gòu):


雖然此時(shí)已修改了記錄,但表的根本結(jié)構(gòu)沒(méi)有改變,此時(shí)的“1、2、3……”仍然是字符型,因此此時(shí)建議修改表的結(jié)構(gòu):


此時(shí)數(shù)據(jù)表才算真正的完成了“瘦身”操作,不過(guò)可能會(huì)有疑問(wèn):之前所說(shuō)的外鍵,怎么沒(méi)看到使用“FOREIGN KEY”,其實(shí)在實(shí)際開(kāi)發(fā)中,使用物理外鍵即“FOREIGN KEY”的機(jī)會(huì)并不多,相反這種事實(shí)外鍵會(huì)應(yīng)用的更廣泛一些。


7、連接的語(yǔ)法結(jié)構(gòu)

MySQL在SELECT語(yǔ)句、多表更新、多表刪除語(yǔ)句中支持JOIN操作。

table_reference {[INNER | CROSS] JOIN | {LEFT | RIGHT} [OUTER] JOIN }
table_reference ON conditional_expr

可以理解為:
 表1“table_reference”+參照關(guān)系“{[INNER | CROSS] JOIN | {LEFT | RIGHT} [OUTER] JOIN }”
 +表2“table_reference”+連接條件“ON conditional_expr”

連接條件:
 使用“ON”關(guān)鍵字來(lái)設(shè)定連接條件,也可以使用WHERE來(lái)代替。
 “ON”關(guān)鍵字更多的用來(lái)設(shè)定連接條件;
 “WHERE”關(guān)鍵字則進(jìn)行結(jié)果集記錄的過(guò)濾。

數(shù)據(jù)表參照:
  table_reference
  tbl_name [[AS] alias] | table_subquery [AS] alias
  數(shù)據(jù)表可以使用“tbl_name AS alias_name”或“tbl_name alias_name”賦予別名;
  table_subquery可以作為子查詢(xún)使用在FROM子句中,此類(lèi)子查詢(xún)必須為其賦予別名。

連接類(lèi)型分為:
  INNER JOIN(內(nèi)連接):在MySQL中,JOIN、CROSS JOIN、INNER JOIN是等價(jià)的。
  LEFT [OUTER] JOIN(左外連接)
  RIGHT [OUTER] JOIN(右外鏈接)

<br />
<br />

內(nèi)連接 INNER JOIN

內(nèi)連接
內(nèi)連接

在演示內(nèi)連接之前,先分別向數(shù)據(jù)表“tdb_goods_cates”、“tdb_goods_brands”中添加三個(gè)商品分類(lèi)及三個(gè)品牌:


之后向數(shù)據(jù)表“tdb_goods”中添加一條記錄:


要注意,該記錄中“cate_id”添加的“12”僅僅是符合數(shù)據(jù)類(lèi)型的要求而沒(méi)有報(bào)錯(cuò),但實(shí)際上根本沒(méi)有“id”為“12”的商品分類(lèi),此時(shí)數(shù)據(jù)表中共有23條記錄。

在實(shí)際使用中,對(duì)于客戶(hù)來(lái)講,可能根本不清楚例如“cate_id”中的“6”代表的是什么意思:


因此需要聯(lián)合查詢(xún)數(shù)據(jù)表“tdb_goods”以及數(shù)據(jù)表“tdb_goods_cates”,由于兩張數(shù)據(jù)表都有“cate_id”字段,需要添加表名加以區(qū)分:


此時(shí)共查詢(xún)到結(jié)果22條,沒(méi)有新加入的記錄的原因是在“tdb_goods_cates”表中不存在“cate_id”為12的商品分類(lèi),而“INNER JOIN”只顯示符合連接條件的記錄,即共有的部分,因此沒(méi)有第23條記錄:


<br />
<br />

外連接 OUTER JOIN

左外連接
左外連接

  修改之前的SQL語(yǔ)句,將“INNER JOIN”改為“LEFT JOIN”,“OUTER”可以省略:


此時(shí)共查詢(xún)到結(jié)果23條,由于是左外連接,因此顯示“tdb_goods”表的全部23條記錄,但是“tdb_goods_cates”表中沒(méi)有符合連接條件的記錄,即“cate_id”為12的商品分類(lèi),因此顯示“NULL”:


<br />


右外連接
右外連接

修改之前的SQL語(yǔ)句,將“LEFT JOIN”改為“RIGHT JOIN”,“OUTER”可以省略:


此時(shí)共查詢(xún)到結(jié)果25條,由于是右外連接,因此顯示“tdb_goods_cates”表的全部10條記錄,但是“tdb_goods”表中沒(méi)有符合連接條件的記錄,即分類(lèi)屬于“路由器”、“交換機(jī)”、“網(wǎng)卡”的商品,因此顯示“NULL”,而且不顯示“cate_id”為“12”的商品:


關(guān)于外鏈接的幾點(diǎn)說(shuō)明(以左外連接為例):

  • tbl_A LEFT JOIN tbl_B ON join_condition
  • 數(shù)據(jù)表B的結(jié)果集依賴(lài)數(shù)據(jù)表A,即數(shù)據(jù)表A中存在的記錄,在數(shù)據(jù)表B中才會(huì)顯示,而數(shù)據(jù)表B的其他記錄則不會(huì)顯示;
  • 數(shù)據(jù)表A的結(jié)果集根據(jù)左連接條件依賴(lài)所有數(shù)據(jù)表(B表除外);
  • 左外連接條件決定如何檢索數(shù)據(jù)表B(在沒(méi)有指定WHERE條件的情況下);
  • 如果數(shù)據(jù)表A的某條記錄符合WHERE條件,但是在數(shù)據(jù)表B不存在符合連接條件的記錄,將生成一個(gè)所有列為空的額外的B行(例如“右外鏈接”中的查詢(xún)結(jié)果)。

<br />
<br />

多表連接

除去之前的兩張表連接之外,還可以更多的表進(jìn)行連接:

此時(shí)查詢(xún)的結(jié)果與之前最開(kāi)始的單表結(jié)果相同,但此時(shí)的意義完全不同:



8、無(wú)限級(jí)分類(lèi)表設(shè)計(jì)

本篇作為案列使用數(shù)據(jù)表“tdb_goods”中的商品分類(lèi),在實(shí)際開(kāi)發(fā)中是遠(yuǎn)遠(yuǎn)不夠的,那么例如“X寶”、“X東”等電商網(wǎng)站的商品分類(lèi)是如何實(shí)現(xiàn)的,可以參考以下案列:

首先創(chuàng)建數(shù)據(jù)表“tdb_goods_types”:


type_id —— 分類(lèi)編號(hào)
type_name —— 分類(lèi)名稱(chēng)
parent_id —— 父類(lèi)編號(hào)

插入相關(guān)記錄:

此次舉例共填入了15條記錄,手動(dòng)輸入過(guò)于繁瑣,因此提供源碼,點(diǎn)擊下載使用。

查看該表的所有記錄:

其中:
“家用電器”與“電腦、辦公”都是頂級(jí)分類(lèi),沒(méi)有父類(lèi);
“大家電”與“生活電器”都屬于“家用電器”,父類(lèi)編號(hào)為“1”,即“家用電器”的商品編號(hào);
“平板電視”與“空調(diào)”都屬于“大家電”,父類(lèi)編號(hào)為“3”,以此類(lèi)推。

對(duì)這種數(shù)據(jù)表進(jìn)行查詢(xún)就需要使用“自身連接”,例如使查詢(xún)結(jié)果顯示子類(lèi)商店的編號(hào)、名稱(chēng)以及父類(lèi)商品的名稱(chēng),就可以這樣理解:

想象有兩張完全相同的表,分別是父表與子表,至于如何確定父表、子表的方式不唯一,位置可以交換,只是為了滿(mǎn)足別名的需要,否則系統(tǒng)將無(wú)法區(qū)分這些相同的字段;當(dāng)確定父表與子表后,父表中“parent_id”字段就沒(méi)有用處了,因?yàn)楸旧砭褪歉副?,而子表中“parent_id”其實(shí)就是父表中的“type_id”,因此,就可以做如下考慮:

以子表為參照
以子表為參照

此時(shí)的查詢(xún)結(jié)果為:

由于MySQL無(wú)法實(shí)現(xiàn)遞歸查詢(xún),因此只能顯示一級(jí)父類(lèi)
由于MySQL無(wú)法實(shí)現(xiàn)遞歸查詢(xún),因此只能顯示一級(jí)父類(lèi)

例如此時(shí)需要查詢(xún)父類(lèi)的商品編號(hào)、名稱(chēng)以及其子類(lèi)的名稱(chēng):

以父表為參照
以父表為參照

此時(shí)的查詢(xún)結(jié)果為:

但這種顯示方式比較混亂,對(duì)此修改為顯示父類(lèi)商品的編號(hào)、名稱(chēng)以及其子類(lèi)商品的數(shù)目:

第一步,簡(jiǎn)化父類(lèi)的數(shù)目,以父類(lèi)商品的名稱(chēng)分組
第一步,簡(jiǎn)化父類(lèi)的數(shù)目,以父類(lèi)商品的名稱(chēng)分組
第二步,按照編號(hào)排序
第二步,按照編號(hào)排序
第三步,修改SQL語(yǔ)句,使用“count”計(jì)數(shù),同時(shí)賦予別名
第三步,修改SQL語(yǔ)句,使用“count”計(jì)數(shù),同時(shí)賦予別名

9、多表刪除

語(yǔ)法結(jié)構(gòu)
DELETE tbl_name[.*] [,tbl_name[.*]] …… FROM tbl_references [WHERE where_condition]

通過(guò)查詢(xún)發(fā)現(xiàn),在“tdb_goods”數(shù)據(jù)表中有部分商品名稱(chēng)重復(fù)的記錄,例如:

細(xì)化查詢(xún)條件,通過(guò)商品名稱(chēng)分組,并查詢(xún)商品名稱(chēng)大于或等于2個(gè)的商品,即為重復(fù)商品:


與之前的“自身連接”類(lèi)似,仍然使用這同一張表演示多表刪除操作:

相同商品的編號(hào)分別是18、19與21、22,WHERE語(yǔ)句的目的是刪除“id”編號(hào)較大的重名商品
相同商品的編號(hào)分別是18、19與21、22,WHERE語(yǔ)句的目的是刪除“id”編號(hào)較大的重名商品

輸入SQL語(yǔ)句后提示“有兩條記錄被刪除”,此時(shí)查詢(xún)記錄只有21條:



10、操作數(shù)據(jù)表記錄的SQL語(yǔ)句匯總:

  • 子查詢(xún)
    SELECT*FROM t1 WHERE col1 = ( SELECT col2 FROM t2);
    由[NOT] IN 引發(fā)的子查詢(xún):
    operand comparison_operator [NOT] IN (subquery)
    = ANY 運(yùn)算符與 IN 等效;
    != ALL 或<> ALL運(yùn)算符與 NOT IN 等效。
    由[NOT] EXISTS引發(fā)的子查詢(xún):
    operand comparison_operator [NOT] EXISTS (subquery)
    EXISTS:當(dāng)子查詢(xún)返回任何行時(shí),EXISTS返回TRUE,觸發(fā)外層查詢(xún);否則返回FALSE。
    NOT EXISTS:與EXISTS相反。
    由比較運(yùn)算符引發(fā)的子查詢(xún):
    operand comparison_operator ANY (subquery)
    operand comparison_operator SOME (subquery)
    operand comparison_operator ALL (subquery)

運(yùn)算符\關(guān)鍵字 | ANY | SOME| ALL
----|------|----

、>= | 最小值     | 最小值     | 最大值    
<、<= | 最大值 | 最大值| 最小值
= | 任意值 | 任意值|
<>、!= | | | 任意值

  • 多表更新
    UPDATE table_references SET col_name1 = {expr1 | DEFAULT} [,col_name2 = {expr2 | DEFAULT}……
    [WHERE where_condition]

  • 連接
    table_reference {[INNER | CROSS] JOIN | {LEFT | RIGHT} [OUTER] JOIN }
    table_reference ON conditional_expr
    連接分類(lèi):
    INNER JOIN(內(nèi)連接):在MySQL中,JOIN、CROSS JOIN、INNER JOIN是等價(jià)的。
    LEFT [OUTER] JOIN(左外連接)
    RIGHT [OUTER] JOIN(右外鏈接)
    連接條件:
    使用“ON”關(guān)鍵字來(lái)設(shè)定連接條件,也可以使用WHERE來(lái)代替。
    “ON”關(guān)鍵字更多的用來(lái)設(shè)定連接條件;
    “WHERE”關(guān)鍵字則進(jìn)行結(jié)果集記錄的過(guò)濾。
    數(shù)據(jù)表參照:
    table_reference
    tbl_name [[AS] alias] | table_subquery [AS] alias
    數(shù)據(jù)表可以使用“tbl_name AS alias_name”或“tbl_name alias_name”賦予別名;
    table_subquery可以作為子查詢(xún)使用在FROM子句中,此類(lèi)子查詢(xún)必須為其賦予別名。

  • 使用CREATE……SELECT插入記錄
    CREATE TABLE [IF NOT EXISTS] tbl_name [(create_definition,……)] select_statement

  • 多表刪除
    DELETE tbl_name[.*] [,tbl_name[.*]] …… FROM tbl_references [WHERE where_condition]

版權(quán)聲明:歡迎轉(zhuǎn)載,歡迎擴(kuò)散,但轉(zhuǎn)載時(shí)請(qǐng)標(biāo)明作者以及原文出處,謝謝合作!             ↓↓↓
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 數(shù)據(jù)準(zhǔn)備 回顧 記錄操作:寫(xiě)操作:INSERT,UPDATE,DELETE讀取操作:SELECT 這章主要學(xué)習(xí):子...
    齊天大圣李圣杰閱讀 1,127評(píng)論 0 4
  • 1、MySQL啟動(dòng)和關(guān)閉(安裝及配置請(qǐng)參照百度經(jīng)驗(yàn),這里不再記錄。MySQL默認(rèn)端口號(hào):3306;默認(rèn)數(shù)據(jù)類(lèi)型格式...
    強(qiáng)壯de西蘭花閱讀 751評(píng)論 0 1
  • 第1章 初涉MySQL 1.1 MySQL文件 (1)MySQL目錄結(jié)構(gòu) (2)MySQL配置向?qū)募ò惭b后配置...
    凜0_0閱讀 989評(píng)論 1 0
  • 1.肯定的言辭 eg 你的男朋友幫你拿了快遞,不要忘記說(shuō):辛苦你了,謝謝你。再配上一個(gè)蜜汁微笑 要知道感謝的力量可...
    8c4c80eebdf7閱讀 537評(píng)論 0 0
  • -01- 背 景 百度媒體年前曾邀請(qǐng)我們這群寫(xiě)手篡一篇以歷史事件,社會(huì)百態(tài),春節(jié)承載的聚散與變遷等為中心的《...
    唯美寧國(guó)閱讀 392評(píng)論 0 1

友情鏈接更多精彩內(nèi)容