-
分組查詢:
分組函數:group by語句
select 字段 from 表名group by 分組字段;
只會返回每組字段的第一條數據、
?一般分組函數配上聚合函數一起使用
select? 聚合函數()from 表名 group by 字段
having 分組之后的條件判斷
having后面可以使用聚合函數
where 后面不可使用聚合函數
查看全部 -
聚合函數:縱向查詢
五個聚合函數:
count:統計指定列的記錄,記錄為null則不統計
sum:計算指定列的數值和,如果不是數值類型,那么計算結果為0
max:計算指定列的最大值
min:計算指定列的最小值
avg:計算指定列的平均值,如果不是數值類型,那么計算結果為0
聚合函數的使用:寫在select 之后 字段名的地方
例如: select count(字段名)from 表名;
查看全部 -
結果查詢:
使用order by語句
語法:select 字段名 from 表名 where 字段=值 order by 字段名 asc/desc
asc升序
desc降序
單列排序
select * from 表名 where 條件 order by 字段 asc/desc;
條件:就是需要的范圍
字段:就是按照哪個字段來去排序
組合排序
select 字段 from 表名 where 字段=值 order by 字段1asc/desc ,字段2 asc/desc
查看全部 -
復習:
更新表的記錄:
updata 表名 set 字段=值;
帶條件的修改: update 表名 set 字段=值 where 字段=值;
刪除表記錄:
delete? from 表名;
帶條件的的刪除 : delete from 表名 where? 字段=值;
truncate table 表名;
truncate 是摧毀整個表,創建一個跟舊表結構一樣的新表
delete 是一條一條記錄刪除;
查看全部 -
復習:
ddl語句操作表:
1、創建表:CREATE TABLE 表名 (字段 類型,字段 類型);
2、數據類型
常用數據類型:int varchar char date
3、查看表:SHOW TABLES;
4、查看表結構:DESC 表名;
5、查看建表語句:SHOW CREATE TABLE 表名;
6、創建表結構相同的表:CREATE TABLE 新表名 LIKE 舊表名;
7、刪除表:DROP TABLE 表名;
8、添加表列:ALTER TABLE 表名 ADD 字段 字段類型;
9、修改列類型:ALTER TABLE 表名 MODIFY 列名 新的類型;
10、修改列名:ALTER TABLE 表名 CHANGE 舊列名 新列名 新的類型;
11、刪除列:ALTER TABLE 表名 DROP 列名;
12、修改表名:RENAME TABLE 表名 TO 新表名;
13、修改表的字符集:ALTER TABLE 表名 DEFAULT CHARACTER SET 新字符集;
查看全部 -
復習:
ddl語句的操作
1、建庫:CREATE DATABASE? IF NOT EXISTS?數據庫名;
2、創建指定字符集的數據庫:CREATE DATABASE 數據庫名 CHARACTER SET 字符集;
3、查看數據庫的建庫語句:SHOW CREATE DATABASE 數據庫名;
4、修改數據庫的字符集:ALTER DATABASE 數據庫名 CHARACTER SET 字符集;
5、查看正在使用的數據庫:SELECT DATABASE();
6、查看所有數據庫:SHOW DATABASES;
7使用、切換數據庫:USE 數據庫名;
8、刪除數據庫:DROP DATABASE 數據庫名;
查看全部 -
SQL:數據結構化語言
分類:
ddl:數據定義語言
對象:數據庫、表、列
關鍵字:create、drop、alter
dml:數據操作語言
對象:數據庫中的表
關鍵字:insert delte update
dql:數據查詢語言
對象:表
關鍵字:select、where
dcl:數據控制語言
對象:用來定義數據庫的訪問權限和安全級別、以及創建用戶
查看全部 -
聚合函數:縱向查詢,對一列的值進行計算,會忽略空值
五個聚合函數:
count:統計指定列的記錄數,記錄為null則不統計
sum:計算指定列的數值和,如果不為數值類型,那么計算結果為0
max:計算指定列的最大值
min:計算指定列的最小值
avg:計算指定列的平均值,如果不為數值類型,那么計算結果為0
語法:寫在sql語句select之后字段名的地方
select 字段名... from 表名;?
例如:select count(age) from 表名;?
查看全部 -
DDL語句操作數據庫以及表的create,drop,alter等;
DML語句對表數據進行insert,delete,update;
DQL語句對表數據進行各種維度select查詢;
查看全部 -
排序:
asc:升序(從小到大)
desc:降序(從大到小)
單列排序:使用一個字段進行排序
語法:select*from 表名 where 字段邏輯運算符 order by 字段 asc;
組合排序:
select * from 表名? where 字段=值 order by 字段 升序/降序 ,字段 升序/降序;
查看全部 -
like:表示模糊查詢
語法
select* from 表名 where 字段 like 通配符字符串;
mysql中有兩個通配符字符串
%:表示0個或多個字符
_:表示一個字符
查看全部 -
邏輯運算符
and 多個條件同時滿足
or 多個條件其中一個滿足
not 不滿足
SELECT * FROM 表名 WHERE 運算符 邏輯運算符 運算符;
NOT 與其他用法不一樣
SELECT * FROM 表名 WHERE NOT 運算符;
in關鍵字
SELECT 字段名 FROM 表名 WHERE 字段 in (數據1,數據2...);
IN 里面的每個數據都會作為一次條件,只要滿足條件就會顯示
范圍:
between 值1 and 值2 表示從值1到值2 的范圍,包括值1.2
查看全部 -
dql:數據查詢語言
用來查詢數據標總的表的記錄
1,簡單查詢??
* 表示所有列
?select * FROM 表名查詢效率慢
查詢指定列
SELECT 字段1,字段2,字段3,字段4 ....FROM 表名;?
2別名查詢
?需要使用as關鍵詞
SELECT 字段名1 AS 別名,字段2 AS 別名....from 表名;?
清除重復值?
3,查詢指定列并且結果不出現重復數據
SELECT? DISTINCT 字段名 FROM 表名;
4,查詢結果參與運算
(1)某列數據和固定值運算
SELECT 列1 +固定值 from 表名;
某列數據和其他數據參與運算
注意:參與運算必須為數值類型
select 列名1+列名2? from 表名;
?
查看全部 -
更新表中的記錄
1,不帶條件的修改:UPDATE 表名 SET 字段名=值;
2,帶條件去修改:UPDATE 表名 SET 字段=值(新值)WHERE 字段=值(舊值);
關鍵字說明:update:修改數據
set 修改那些字段;
where 指定條件
? 3,修改多條字段UPDATE 表名 SET 字段=值(新值),字段=值(新值)WHERE 字段=值(舊值);
刪除表中記錄:
1,不帶條件的刪除:DELETE FROM 表名;?
2, 帶條件的刪除:DELETE FORM 表名 WHERE 字段名=值;?
truncate table 表名;
truncate與delete的區別
truncate是將整個表銷毀,重新創建一個新的表,新表結構與舊表相同。而delete是將表中數據一條一條刪除
查看全部 -
DML 語句:數據操作語言
用來對數據中表的數據進行增刪改
插入記錄:INSERT INTO 表名 (字段名1,字段名2.)VALUES
(值一,值二...);
插入全部字段:INSERT INTO 表名(字段名1,字段名2)VALUES(值一,值二);
若已確定要插入所有字段的值:INSERT INTO 表名 VALUES(值一,值二);
?插入部分數據
insert into 表名(字段一,字段二)values(值一,值二);
查看正在使用的數據庫:SHOW DATABASE();
查看全部
舉報