MySQL 數據的基本操作

添加數據:

INSERT INTO  Database_Name.Table_name(`colName1`,`colName2`) VALUES ('colValue1','colValue2')

 #//如果之前使用了USE Database_Name語句在插入時可以不用指明數據庫,只需說明是哪個表就可以

刪除數據:

DELETE FROM Database_Name.Table_name WHERE `colName`='colValue';

 #//如果沒有添加WHERE子句,將刪除該表中的所有記錄(表依然存在,表中數據爲空)WHERE 子句可以是任何條件。

修改數據:

UPDATE Database_Name.Table_name SET `colName`='colValue' WHERE `colName`='colValue'

 #//如果沒有添加 WHERE子句,將更新該表中所有數據,WHERE 子句可以是任何條件。

查詢數據:

一、單表查詢:

  1.基礎查詢

  SELECT colName1,colName2,colName1 FROM Database_Name.Table_name WHERE `colName`='colValue'。

 #//如果沒有WHERE子句,將顯示該表中的所有記錄,WHERE子句可以是任何條件。如果顯示一條記錄的所有屬性可以使用"*"。

  2.GROUP BY 

  SELECT `colName1` ,MAX('colName2') FROM Database_Name.Table_name GROUP BY `colName1` HAVING MAX('colName')>2

 #//group by 語句就是將查詢結果按照GROUP BY關鍵詞緊跟的列名(只能有一個列名)進行分組排序(colName1有多少個不同的值顯示多少條記錄)。添加HAVING 關鍵詞後將已經排好序的結果集在按照HAVING的條件進行篩選。

  3.ORDER BY

  SELECT `colName1` FROM Database_Name.Table_name ORDER BY `colName1` ASC LIMIT startIndex,nums

 #//order by 語句就是將查詢結果按照ORDER BY關鍵詞緊跟的列名進行升序(ASC)/(DESC)降序排序(默認爲升序)。

 #//LIMIT關鍵詞可以將查詢結果分頁,如果將查詢到的記錄進行從零開始標號,那麼LIMIIT語句取出的爲從startIndex開始取出nums條記錄

  4.模糊查詢

  SELECT * FROM Database_Name.Table_name WHERE `colName` LIKE '%target%' 

 #//LIKE關鍵詞必須跟在WHERE後面,可以使用%、_進行匹配,%可以替代一個或多個任意類型字符,_可以替代一個任意類型字符

  5.其他查詢

  SELECT * FROM Database_Name.Table_name WHERE FIND_IN_SET('targetstr',`colName`)

 #//查詢數據表中字段用逗號隔開的一維數組是否含有特定的值

二、多表查詢

 # //倆張表及以上,表之間有一定的聯繫;字段數據在多張表中一致

  1.笛卡爾積

  //不常用

SELECT Table_name1.colName1, Table_name1.colName2 ,Table_name2.colName1, Table_name2.colName2 FROM Table_name1 Table_name2 WHERE Table_name1.colName1=Table_name2.colName1

  2.內連接

  #//執行速度快,數據容易丟失

 SELECT Table_name1.colName1,Table_name1.colName2 FROM Table_name1 INNER JOIN Table_name2 WHERE select_condition

 //一般情況下,爲了更好的性能,連接的數據表不超過三個。

 3.左連接

SELECT Table_name1.colName1,Table_name1.colName2,Table_name2.colName1,Table_name2.colName2 FROM Table_name1 LEFT JOIN Table_name2 ON Table_name1.colName1=Table_name1.colName1

4.右連接

SELECT Table_name1.colName1,Table_name1.colName2,Table_name2.colName1,Table_name2.colName2 FROM Table_name1 RIGHT JOIN Table_name2 ON Table_name1.colName1=Table_name1.colName1


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章