1. 程式人生 > >MySQL表數據的增刪改查

MySQL表數據的增刪改查

trunc .... 輸出 自增 sel select 數量 使用 mit

1.增

INSERT INTO tb VALUES(v1,v2,v3...);

INSERT INTO tb (field1,field2...) VALUES(v1,v2...);

INSERT INTO tb SET field1=v1, field2=v2....;

INSERT INTO tb (field1,field2,field3...)
VALUES( v11,v12,v13...)
(v21,v22,v23...)
......;

2.刪
2.1 刪除部分數據

DELETE FROM tb WHERE condition_expr;

2.2 刪除所有數據

DELETE FROM tb;
TRUNCATE [TABLE] tb;

兩者區別是TRUNCATE刪除更徹底,自增的字段在刪除以後會重新從1開始,DELETE刪除所有數據以後,自增字段依然會延續以前的值繼續往後增加。

3.改

UPDATE tb SET field1=v1 [,field2=v2...] [WHERE condition_expr];

4.查(單表)

SELECT * FROM tb [WHERE condition_expr];

SELECT DISTINCT field1[,field2...] FROM tb [WHERE condition_expr]; ##去重復

SELECT field1,field2...FROM tb [WHERE condition_expr];

條件判斷相關的關鍵詞和符號:

=   等於
<>, !=   不等於
<     小於
<=    小於等於
>     大於
>=    大於等於
IN    枚舉 (例如: WHERE field1 IN (a,b,c))
BETWEEN ... AND ... (例如: WHERE age BETWEEN 2 AND 8;)
IS [NOT] NULL 空值判斷 (例如: WHERE age IS [NOT] NULL;)
AND    與
OR    或
[NOT] LIKE 通配符 (%百分號通配符,任意長度字符串;_ 下劃線通配符,單個字符)

查詢中可能用到的聚合函數

COUNT() SELECT COUNT(*) FROM tb;
SUM() SELECT SUM(field) FROM tb;
AVG()
MAX()
MIN()

排序

SELECT field1,field2... FROM tb [WHERE cond_expr] ORDER BY field1 [ASC|DESC] [, field2[ACS| DESC];

分組

SELECT COUNT(*),field1 FROM tb GROUP BY field1;
SELECT SUM(field1),field2 FROM tb GROUP BY field2 HAVING SUM(field1) condition_expr; ## HAVING 關鍵字的與WHERE的區別就是前者可以配合聚合函數使用。

限制查詢結果的數量

SELECT * FROM tb LIMIT [offset] num; ##輸出結果從offset開始,總共輸出num個。

為表取別名

SELECT * FROM tb [AS] alias WHERE alias.field condition_expr;

為屬性取別名

SELECT field1 [AS] alias1 [, field2 [AS] alias2 ...] FROM tb ...;

MySQL表數據的增刪改查