@
添加數據
- 語法:
* insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);
- 注意:
(1) 列名和值要一一對應。
(2) 如果表名后,不定義列名,則默認給所有列添加值
insert into 表名 values(值1,值2,...值n);
(3) 除了數字類型,其他類型需要使用引號(單雙都可以)引起來
刪除數據
- 語法:
* delete from 表名 [where 條件]- 注意:
(1) 如果不加條件,則刪除表中所有記錄。
(2) 如果要刪除所有記錄- 使用推薦:
(1)delete from 表名; -- 不推薦使用。有多少條記錄就會執行多少次刪除操作
(2)TRUNCATE TABLE 表名; -- 推薦使用,效率更高 先刪除表,然后再創建一張一樣的表。
修改數據
- 語法:
update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 條件];
- 注意:
如果不加任何條件,則會將表中所有記錄全部修改。
查詢數據
1) 多個字段的查詢:
- 語法
select 字段名1,字段名2... from 表名;- 注意:
如果查詢所有字段,則可以使用*來替代字段列表。- 去除重復:distinct
- 計算列
(1) 一般可以使用四則運算計算一些列的值。(一般只會進行數值型的計算)
(2) ifnull(表達式1,表達式2):null參與的運算,計算結果都為null
(3) 表達式1:哪個字段需要判斷是否為null
(4) 如果該字段為null后的替換值。- 起別名:as:as也可以省略
2)條件查詢:
- where子句后跟條件
- 運算符:
(1) != 、 > 、< 、<= 、>= 、= 、<>
(2) BETWEEN...AND
(3) IN( 集合)
(4) LIKE:模糊查詢
(5) 占位符:
(6) _:單個任意字符
(7) %:多個任意字符
(8) IS NULL :為空集
(9) and 或 &&:並且
(10) or 或 || :或
(11) not 或 !:非
3)查詢語句:
- 排序查詢
(1) 語法:order by 子句
(2) order by 排序字段1 排序方式1 , 排序字段2 排序方式2...
(3) 排序方式: ASC:升序,默認的; DESC:降序。
- 注意: 如果有多個排序條件,則當前邊的條件值一樣時,才會判斷第二條件。
- 聚合函數:將一列數據作為一個整體,進行縱向的計算。
(1)count:計算個數
* 一般選擇非空的列:主鍵
* count(*)
(2) max:計算最大值
(3) min:計算最小值
(4) sum:計算和
(5) avg:計算平均值
- 注意:聚合函數的計算,排除null值。
解決方案:
(1) 選擇不包含非空的列進行計算
(2) IFNULL函數
4)分組查詢:
- 語法:group by 分組字段;
- 注意:
(1) 分組之后查詢的字段:分組字段、聚合函數
(2) where 和 having 的區別?
* where 在分組之前進行限定,如果不滿足條件,則不參與分組。having在分組之后進行限定,如果不滿足結果,則不會被查詢出來
- where 后不可以跟聚合函數,having可以進行聚合函數的判斷。
5)分頁查詢:
- 語法:limit 開始的索引,每頁查詢的條數;
- 公式:開始的索引 = (當前的頁碼 - 1) * 每頁顯示的條數-- 每頁顯示3條記錄