久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

MySQL數(shù)據(jù)庫(kù)中高階SQL語(yǔ)句的使用示例

共計(jì) 5266 個(gè)字符,預(yù)計(jì)需要花費(fèi) 14 分鐘才能閱讀完成。

自動(dòng)寫(xiě)代碼機(jī)器人,免費(fèi)開(kāi)通

這篇文章主要介紹了 MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例,具有一定借鑒價(jià)值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓丸趣 TV 小編帶著大家一起了解一下。

一、準(zhǔn)備工作

1、安裝 MySQL 數(shù)據(jù)庫(kù)

Shell 腳本一鍵部署——源碼編譯安裝 MySQL

2、實(shí)驗(yàn)準(zhǔn)備,數(shù)據(jù)表配置

mysql -uroot -p
show databases;
create database train_ticket;
use train_ticket;
create table REGION(region varchar(10),site varchar(20));
create table FARE(site varchar(20),money int(10),date varchar(15));
desc REGION;
desc FARE;
insert into REGION values ( south , changsha 
insert into REGION values ( south , nanchang 
insert into REGION values ( north , beijing 
insert into REGION values ( north , tianjin 
insert into FARE values ( changsha ,1000, 2021-01-30 
insert into FARE values ( nanchang ,700, 2021-01-30 
insert into FARE values ( beijing ,1500, 2021-01-30 
insert into FARE values ( tianjin ,1200, 2021-01-30 
insert into FARE values ( beijing ,2200, 2021-02-05 
select * from REGION;
select * from FARE;

MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例
MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例

二、MySQL 高級(jí) (進(jìn)階) SQL 語(yǔ)句

1、SELECT

顯示表格中一個(gè)或數(shù)個(gè)字段的所有資料
語(yǔ)法:SELECT 字段 FROM 表名

select region from REGION;

2、DISTINCT

不顯示重復(fù)的資料(去重)
語(yǔ)法:SELECT DISTINCT 字段 FROM 表名

select distinct region from REGION;

3、WHERE

有條件查詢
語(yǔ)法:SELECT 字段 FROM 表名 WHERE 條件

select site from FARE where money   1000;
select site from FARE where money   1000;
select site from FARE where money = 1000;

4、AND、OR

and(并且)、or(或者)
語(yǔ)法:SELECT 字段 FROM 表名 WHERE 條件 1 ([AND|OR] 條件 2)+;

select site from FARE where money   1000 and (money   1500);
select site,money from FARE where money   500 or (money   1500 and money  = 700);
select site,money,date from FARE where money  = 500 and (date    2021-02-05  and money   1000);

5、IN

顯示已知的值的資料
語(yǔ)法:SELECT 字段 FROM 表名 WHERE 字段 IN (‘值 1’,‘值 2’,……);

select site,money from FARE where money in (700,1000);

6、BETWEEN

顯示兩個(gè)值范圍內(nèi)的資料
語(yǔ)法:SELECT 字段 FROM 表名 WHERE 字段 BETWEEN‘值一’and‘值二’;

select * from FARE where money between 500 and 1000;

7、通配符、LIKE

通常通配符都是跟 LIKE 一起使用

%:百分號(hào)表示零個(gè)、一個(gè)或多個(gè)字符
_:下劃線表示單個(gè)字符

LIKE:用于匹配模式來(lái)查找資料
語(yǔ)法:SELECT 字段 FROM 表名 WHERE 字段 LIKE‘模式’;

select * from FARE where site like  be% 
select site,money from FARE where site like  %jin_

8、ORDER BY

按關(guān)鍵字排序
語(yǔ)法:SELECT 字段 FROM 表名 [WHERE 條件] ORDER BY 字段 [ASC,DESC];
#ASC:按照升序進(jìn)行排序,默認(rèn)的排序方式
#DESC:按照降序進(jìn)行排序

select * from FARE order by money desc;
select date,money from FARE order by money desc;

函數(shù)

1、數(shù)學(xué)函數(shù)

abs(x) 返回 x 的絕對(duì)值 rand() 返回 0 到 1 的隨機(jī)數(shù) mod(x,y) 返回 x 除以 y 以后的余數(shù) power(x,y) 返回 x 的 y 次方 round(x) 返回離 x 最近的整數(shù) round(x,y) 保留 x 的 y 位小數(shù)四舍五入后的值 sqrt(x) 返回 x 的平方根 truncate(x,y) 返回?cái)?shù)字 x 截?cái)酁?y 位小數(shù)的值 ceil(x) 返回大于或等于 x 的最小整數(shù) floor(x) 返回小于或等于 x 的最大整數(shù) greatest(x1,x2…) 返回集合中最大的值 least(x1,x2…) 返回集合中最小的值

select abs(-1),rand(),mod(5,3),power(2,3),round (1.579),round(1.734,2);

MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例

select sqrt(9),truncate(1.234,2),ceil(1.2),floor(1.9),greatest(1,2,3,4),least(1,2,3,4);

MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例

2、聚合函數(shù)

avg() 返回指定列的平均值 count() 返回指定列中非 NULL 值的個(gè)數(shù) min() 返回指定列的最小值 max() 返回指定列的最大值 sum(x) 返回指定列的所有值之和

select avg(money) from FARE;
select count(money) from FARE;
select min(money) from FARE;
select max(money) from FARE;
select sum(money) from FARE;

#count(*) 包括所有列的行數(shù),在統(tǒng)計(jì)結(jié)果時(shí),不好忽略值為 null
#count(字段) 只包括那一行的列數(shù),在統(tǒng)計(jì)結(jié)果的時(shí)候,會(huì)忽略列值為 null 的值

3、字符串函數(shù)

trim() 返回去除指定格式的值 concat(x,y) 將提供的參數(shù) x 和 y 拼接成一個(gè)字符串 substr(x,y) 獲取從字符串 x 中的第 y 個(gè)位置開(kāi)始的字符串,跟 substring() 函數(shù)作用相同 substr(x,y,z) 獲取從字符串 x 中的第 y 個(gè)位置開(kāi)始長(zhǎng)度為 z 的字符串 length(x) 返回字符串 x 的長(zhǎng)度 replace(x,y,z) 將字符串 z 替代字符串 x 中的字符串 yupper(x) 將字符串 x 的所有字母變成大寫(xiě)字母 lower(x) 將字符串 x 的所有字母變成小寫(xiě)字母 left(x,y) 返回字符串 x 的前 y 個(gè)字符 right(x,y) 返回字符串 x 的后 y 個(gè)字符 repeat(x,y) 將字符串 x 重復(fù) y 次 space(x) 返回 x 個(gè)空格 strcmp(x,y) 比較 x 和 y,返回的值可以為 -1,0,1reverse(x) 將字符串 x 反轉(zhuǎn)

SELECT TRIM ([[ 位置] [要移除的字符串] FROM ] 字符串 );

#[位置]:的值可以為 LEADING (起頭), TRAILING (結(jié)尾), BOTH (起頭及結(jié)尾)。
#[要移除的字符串]:從字串的起頭、結(jié)尾,或起頭及結(jié)尾移除的字符串。缺省時(shí)為空格。

select trim(leading  na  from  nanchang 
select trim(trailing  --  from  nanchang-- 
select trim(both  --  from  --nanchang-- 
select concat(region,site) from REGION where region =  south 
select concat(region,   ,site) from REGION where region =  south 
select substr(money,1,2) from FARE;
select length(site) from FARE;
select replace(site, ji , --) from FARE;
select upper(site) from FARE;
select lower( HAHAHA 
select left(site,2) from FARE;
select right(site,3) from FARE;
select repeat(site,2) from FARE;
select space(2); 
select strcmp(100,200);
select reverse(site) from FARE;

4、| | 連接符

如果 sql_mode 開(kāi)啟開(kāi)啟了 PIPES_AS_CONCAT,|| 視為字符串的連接操作符而非或運(yùn)算符,和字符串的拼接函數(shù) Concat 相類似,這和 Oracle 數(shù)據(jù)庫(kù)使用方法一樣的

MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例

mysql -uroot -p
use train_ticket;
select region ||     || site from REGION where region =  north 
select site ||     || money ||     || date from FARE;

5、GROUP BY

BY 后面的欄位的查詢結(jié)果進(jìn)行匯總分組,通常是結(jié)合聚合函數(shù)一起使用的
GROUP BY 有一個(gè)原則,就是 SELECT 后面的所有列中,沒(méi)有使用聚合函數(shù)的列,必須出現(xiàn)在 GROUP BY 后面。

語(yǔ)法:SELECT 字段 1,SUM(字段 2) FROM 表名 GROUP BY 字段 1;

select site,sum(money) from FARE group by site;
select site,sum(money),date from FARE group by site order by money desc;
select site,count(money),sum(money),date from FARE group by site order by money desc;

6、HAVING

用來(lái)過(guò)濾由 GROUP BY 語(yǔ)句返回的記錄集,通常與 GROUP BY 語(yǔ)句聯(lián)合使用。
HAVING 語(yǔ)句的存在彌補(bǔ)了 WHERE 關(guān)鍵字不能與聚合函數(shù)聯(lián)合使用的不足。如果被 SELECT 的只有函數(shù)欄,那就不需要 GROUP BY 子句。

語(yǔ)法:SELECT 字段 1,SUM(字段 2) FROM 表名 GROUP BY 字段 1 HAVING(函數(shù)條件);

select site,count(money),sum(money),date from FARE group by site having sum(money)  =700;

7、別名

字段別名、表格別名
語(yǔ)法:SELECT“表格別名”.“字段 1”[AS]“字段 1 別名”FROM“表格名”[AS]“表格別名”;

select RE.region AS reg, count(site) from REGION AS RE group by reg;
select FA.site AS si,sum(money),count(money),date AS da from FARE AS FA group by si;

8、子查詢

連接表格,在 WHERE 子句或 HAVING 子句中插入另一個(gè) SQL 語(yǔ)句
語(yǔ)法:SELECT 字段 1 FROM 表格 1 WHERE 字段 2 [比較運(yùn)算符] (SELECT 字段 1 FROM 表格 2 WHERE 條件)

可以是符號(hào)的運(yùn)算符
例:=、、、=、=

也可以是文字的運(yùn)算符
例:LIKE、IN、BETWEEN

select A.site,region from REGION AS A where A.site in(select B.site from FARE AS B where money 2000);
select B.site,money,date from FARE AS B where site in(select A.site from REGION AS A where region =  north

感謝你能夠認(rèn)真閱讀完這篇文章,希望丸趣 TV 小編分享的“MySQL 數(shù)據(jù)庫(kù)中高階 SQL 語(yǔ)句的使用示例”這篇文章對(duì)大家有幫助,同時(shí)也希望大家多多支持丸趣 TV,關(guān)注丸趣 TV 行業(yè)資訊頻道,更多相關(guān)知識(shí)等著你來(lái)學(xué)習(xí)!

向 AI 問(wèn)一下細(xì)節(jié)

正文完
 
丸趣
版權(quán)聲明:本站原創(chuàng)文章,由 丸趣 2023-12-04發(fā)表,共計(jì)5266字。
轉(zhuǎn)載說(shuō)明:除特殊說(shuō)明外本站除技術(shù)相關(guān)以外文章皆由網(wǎng)絡(luò)搜集發(fā)布,轉(zhuǎn)載請(qǐng)注明出處。
評(píng)論(沒(méi)有評(píng)論)
主站蜘蛛池模板: 安溪县| 门源| 安陆市| 寿阳县| 清涧县| 郓城县| 基隆市| 咸阳市| 石城县| 寿阳县| 体育| 马公市| 静宁县| 洛阳市| 项城市| 巴彦淖尔市| 郓城县| 清新县| 凉城县| 五指山市| 连山| 瑞金市| 栖霞市| 皋兰县| 新沂市| 枣阳市| 雅江县| 西盟| 阜新市| 台安县| 长阳| 衡东县| 绥化市| 安庆市| 新民市| 玛沁县| 炎陵县| 淮阳县| 三台县| 宁国市| 灵石县|