欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL中的各種查詢問(wèn)題

 更新時(shí)間:2024年01月11日 16:04:11   作者:Mr-X~  
這篇文章主要介紹了MySQL中的各種查詢問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

MySQL中的各種查詢

基礎(chǔ)查詢

條件查詢

#語(yǔ)法:select 查詢列表 from 表名 where 篩選條件;
#分類:
#		一.按條件表達(dá)式篩選,條件運(yùn)算符:> < = != <> >= <=
#		二.按邏輯表達(dá)式篩選,邏輯運(yùn)算符:&& || ! and or not
#		三.模糊查詢:like       between and      in      is null
# like一般和通配符搭配使用,%通配符表示任意多個(gè)字符包含0個(gè)字符
#						_通配符表示任意單個(gè)字符

排序查詢

#語(yǔ)法:
#	select 查詢列表 from 表名
#	[where 篩選條件]
#	order by 排序列表 [asc|desc]
#其中asc表示升序排列,desc表示降序排列,如果不寫默認(rèn)是asc升序排列

常見(jiàn)函數(shù)查詢

分組查詢

#語(yǔ)法
# select 分組函數(shù),列(要求是出現(xiàn)在group by后面的列)
# from 表
# [where 篩選條件]
# group by 分組的列表
# [order by 子句]

#常見(jiàn)的分組函數(shù)
# sum求這組總和,avg求這組平均值,max求這組最大值,min求這組最小值,count計(jì)算這組數(shù)據(jù)總的個(gè)數(shù)

連接查詢

#創(chuàng)建表并插入數(shù)據(jù)
create table a_table(
	a_id int,
    a_name varchar(20),
    a_age int
);
create table b_table(
	b_id int,
    b_name varchar(20),
    b_age int
);
insert into a_table values(1,"張大麻子",19),
(2,"張二麻子",18),
(7,"王大壯",19),
(8,"劉鐵柱",20);
insert into b_table values(1,"五個(gè)核桃",18),
(2,"鐵牛",20),
(4,"劉大柱子",19),
(5,"母夜叉子",20);

內(nèi)連接

# 內(nèi)連接 
# 關(guān)鍵字  inner join         on
# 其中inner關(guān)鍵字可以省略
# 篩選條件放在where后面,連接條件放在on后面,提高分離性
# 內(nèi)連接的結(jié)果只取兩個(gè)表的交集部分

外連接

#語(yǔ)法:
# left (outer) join          on
# right (outer) join         on
#外連接中的outer關(guān)鍵字可以省略
#全外連接mysql不支持,暫時(shí)不必掌握
#外連接分為左外連接和右外連接,左外連接左邊的表是主表,右外連接右邊的表是主表
#外連接與內(nèi)連接不同的是:內(nèi)連接只會(huì)取兩個(gè)表的交集部分,而外連接會(huì)顯示出主表中的全部記錄,而另外一個(gè)非主表只會(huì)顯示出符合搜索條件的
#						記錄,其它的會(huì)用null代替

交叉連接

# 語(yǔ)法:
# cross join
#交叉連接其實(shí)就是求兩個(gè)表的笛卡爾積
#如果a表有m條記錄,b表有n條記錄,那么交叉連接之后,總的記錄就有m*n條

子查詢

#如果在一個(gè)sql查詢語(yǔ)句中出現(xiàn)了另外一個(gè)sql查詢語(yǔ)句,這就叫做子查詢
# 子查詢出現(xiàn)的位置,記住兩個(gè)就可以了,一個(gè)是where后面,另一個(gè)是from后面,其中標(biāo)量子查詢和列子查詢都可以在where的后面,而表子查																	詢必須是在from的后面,并且需要給這個(gè)表起別名
#按結(jié)果集的行列數(shù)不同,子查詢可以分為
#	標(biāo)量子查詢(結(jié)果集只有一行一列,其實(shí)這個(gè)子語(yǔ)句就相當(dāng)于一個(gè)具體的數(shù)值)
#	列子查詢(結(jié)果集有多行一列,其實(shí)這個(gè)子語(yǔ)句就相當(dāng)于一個(gè)有多個(gè)值的集合)
#	行子查詢(結(jié)果集只有一行多列)
#	表子查詢(結(jié)果集有多行多列,其實(shí)這個(gè)子語(yǔ)句就相當(dāng)于一個(gè)表)
#其中列子查詢必須要配合操作符使用,都有什么操作符呢?
#	in/not in 等于列表中的任意一個(gè)或不等于列表中的任意一個(gè)
#	any/some 此操作符必須要結(jié)合< > = !=等操作符使用,比如<any(列子查詢語(yǔ)句)表示:只要小于列子查詢結(jié)果的其中一個(gè)就行了,也即是																		只要小于最大的就行了
#	all 此操作符也必須要結(jié)合< > = !=等操作符使用,比如<all(列子查詢語(yǔ)句)表示:必須小于列子查詢結(jié)果中的所有值,也即是必須要小于																		最小的

標(biāo)量子查詢的例子如下圖:

列子查詢的例子如下圖:

表子查詢的例子如下圖:

聯(lián)合查詢

# 關(guān)鍵字union
# 聯(lián)合查詢可以將多條查詢語(yǔ)句的結(jié)果合并成一個(gè)結(jié)果
# 聯(lián)合查詢要求查詢結(jié)果的列數(shù)以及列的順序都要保持一致
# 使用union關(guān)鍵字默認(rèn)去重,如果使用union all則可以包含重復(fù)項(xiàng)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何用Navicat操作MySQL

    如何用Navicat操作MySQL

    這篇文章主要介紹了如何用Navicat操作MySQL,幫助大家使用可視化工具來(lái)連接 MySQL,感興趣的朋友可以了解下
    2021-05-05
  • Mysql實(shí)時(shí)備份實(shí)現(xiàn)方法

    Mysql實(shí)時(shí)備份實(shí)現(xiàn)方法

    這篇文章主要介紹了Mysql實(shí)現(xiàn)實(shí)時(shí)備份,需要的朋友可以參考下
    2016-02-02
  • MySQL數(shù)據(jù)管理操作示例講解

    MySQL數(shù)據(jù)管理操作示例講解

    MySQL是一種關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),關(guān)系數(shù)據(jù)庫(kù)將數(shù)據(jù)保存在不同的表中,而不是將所有數(shù)據(jù)放在一個(gè)大倉(cāng)庫(kù)內(nèi),這樣就增加了速度并提高了靈活性
    2022-12-12
  • mysql having用法解析

    mysql having用法解析

    having字句可以讓我們篩選成組后的各種數(shù)據(jù),where字句在聚合前先篩選記錄,也就是說(shuō)作用在group by和having字句前,下面通過(guò)實(shí)例給大家介紹mysql having用法,一起看看吧
    2017-10-10
  • Mysql中Row size too large (> 8126) 錯(cuò)誤的問(wèn)題解決

    Mysql中Row size too large (> 8126)&n

    本文主要介紹了Mysql中Row size too large (> 8126) 錯(cuò)誤的問(wèn)題解決,原因?qū)嵅迦氲男袛?shù)據(jù)可能太大了,超過(guò)了設(shè)定的闕值,下面就來(lái)看一下如何解決
    2024-07-07
  • MySQL筆記之索引的使用

    MySQL筆記之索引的使用

    索引是創(chuàng)建在表上的,對(duì)數(shù)據(jù)庫(kù)表中一列或多列的值進(jìn)行排序的一種結(jié)構(gòu)其作用主要在于提高查詢的速度,降低數(shù)據(jù)庫(kù)系統(tǒng)的性能開(kāi)銷
    2013-05-05
  • mysql免安裝沒(méi)有任何root權(quán)限

    mysql免安裝沒(méi)有任何root權(quán)限

    這篇文章主要介紹了mysql免安裝沒(méi)有任何root權(quán)限的安裝與配置教程,本文圖文并茂給大家介紹的非常詳細(xì),需要的朋友參考下
    2017-01-01
  • mysql 存儲(chǔ)過(guò)程中變量的定義與賦值操作

    mysql 存儲(chǔ)過(guò)程中變量的定義與賦值操作

    昨天我們講了mysql存儲(chǔ)過(guò)程創(chuàng)建修改與刪除,下面我們這篇教程是講關(guān)于mysql存儲(chǔ)過(guò)程中變量的定義賦值操作哦。
    2010-05-05
  • MySQL復(fù)制架構(gòu)的搭建及配置過(guò)程

    MySQL復(fù)制架構(gòu)的搭建及配置過(guò)程

    這篇文章主要介紹了MySQL復(fù)制架構(gòu)的相關(guān)知識(shí),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-02-02
  • MySQL判別InnoDB表是獨(dú)立表空間還是共享表空間的方法詳解

    MySQL判別InnoDB表是獨(dú)立表空間還是共享表空間的方法詳解

    這篇文章主要給大家介紹了關(guān)于MySQL判別InnoDB表是獨(dú)立表空間還是共享表空間的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09

最新評(píng)論