這篇文章運用了實例代碼展示select語句的單表查詢的用法,代碼非常詳細,可供感興趣的小伙伴們參考借鑒,希望對大家有所幫助。
讓客戶滿意是我們工作的目標,不斷超越客戶的期望值來自于我們對這個行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價值的長期合作伙伴,公司提供的服務(wù)項目有:域名與空間、雅安服務(wù)器托管、營銷軟件、網(wǎng)站建設(shè)、北關(guān)網(wǎng)站維護、網(wǎng)站推廣。
SELECT語句的基本語法如下:
select selection_list //要查詢的內(nèi)容,選擇哪些列
from 數(shù)據(jù)表名 //指定數(shù)據(jù)表
where primary_constraint //查詢時需要滿足的條件,行必須滿足的條件
group by grouping_columns //如何對結(jié)果進行分組
order by sorting_cloumns //如何對結(jié)果進行排序
having secondary_constraint //查詢時滿足的第二條件
limit count
單表查詢是指從一張表中查詢所需要的數(shù)據(jù)。所有查詢操作都比較簡單。
查詢所有字段是指查詢表中所有字段的數(shù)據(jù)。這種方式可以將表中所有字段的數(shù)據(jù)都查詢出來。在MySQL中可以使用“*”代表所有的列,即可查出所有的字段,
語法格式如下:
SELECT * FROM 表名;
create database test; #創(chuàng)建庫
use test; #進入庫
create table info (id int not null,name char(6),score decimal(5,2),age int(4)); #創(chuàng)建表
插入測試數(shù)據(jù)
insert into info (id,name,score,age)values(1,'san',88,33);
insert into info (id,name,score,age)values(2,'lisi',48,31);
insert into info (id,name,score,age)values(3,'wwu',68,27);
insert into info (id,name,score,age)values(4,'pw',98,25);
insert into info (id,name,score,age)values(5,'wlk',19,37);
insert into info (id,name,score,age)values(3,'lihua',58,23);
SELECT * FROM info;
單表查詢是指從一張表中查詢所需要的數(shù)據(jù)。所有查詢操作都比較簡單
查詢指定字段可以使用下面的語法格式:
SELECT 字段名 FROM 表名;
SELECT name FROM info;
查詢結(jié)果:
如果要從很多記錄中查詢出指定的記錄,那么就需要一個查詢的條件。設(shè)定查詢條件應(yīng)用的是WHERE子句。通過它可以實現(xiàn)很多復(fù)雜的條件查詢。在使用WHERE子句時,需要使用一些比較運算符來確定查詢的條件。
SELECT * FROM info WHERE name = 'lisi' ;
查詢結(jié)果:
IN關(guān)鍵字可以判斷某個字段的值是否在于指定的集合中。如果字段的值在集合中,則滿足查詢條件,該記錄將被查詢出來;如果不在集合中,則不滿足查詢條件。
其語法格式如下:
SELECT * FROM 表名 WHERE 條件 [NOT] IN(元素1,元素2,…,元素n);
SELECT * FROM info WHERE name in ('lisi','pw') ;
查詢結(jié)果:
SELECT * FROM info WHERE name not in ('lisi','kk') ;
查詢結(jié)果:
BETWEEN AND關(guān)鍵字可以判斷某個字段的值是否在指定的范圍內(nèi)。如果字段的值在指定范圍內(nèi),則滿足查詢條件,該記錄將被查詢出來。如果不在指定范圍內(nèi),則不滿足查詢條件。
其語法如下:
SELECT * FROM 表名 WHERE 條件 [NOT] BETWEEN 取值1 AND 取值2;
SELECT * FROM info WHERE age BETWEEN 25 AND 35;
查詢結(jié)果:
友情提醒:邊緣值包括在內(nèi),25和35都符合條件
LIKE屬于較常用的比較運算符,通過它可以實現(xiàn)模糊查詢。
它有兩種通配符:“%”和下劃線“_”;
SELECT * FROM info WHERE name LIKE '%w%' ;
查詢結(jié)果:
IS NULL關(guān)鍵字可以用來判斷字段的值是否為空值(NULL)。如果字段的值是空值,則滿足查詢條件,該記錄將被查詢出來。如果字段的值不是空值,則不滿足查詢條件。
其語法格式樣如下:
IS [NOT] NULL
SELECT * FROM info WHERE age is not NULL;
查詢結(jié)果:
AND關(guān)鍵字可以用來聯(lián)合多個條件進行查詢。使用AND關(guān)鍵字時,只有同時滿足所有查詢條件的記錄會被查詢出來。如果不滿足這些查詢條件的其中一個,這樣的記錄將被排除掉。
AND關(guān)鍵字的語法格式如下:
select * from 數(shù)據(jù)表名 where 條件1 and 條件2 […AND 條件表達式n];
SELECT * FROM info WHERE age =33 and name ='san';
查詢結(jié)果:
OR關(guān)鍵字也可以用來聯(lián)合多個條件進行查詢,但是與AND關(guān)鍵字不同,OR關(guān)鍵字只要滿足查詢條件中的一個,那么此記錄就會被查詢出來;如果不滿足這些查詢條件中的任何一個,這樣的記錄將被排除掉。
OR關(guān)鍵字的語法格式如下:
select * from 數(shù)據(jù)表名 where 條件1 OR 條件2 […OR 條件表達式n];
SELECT * FROM info WHERE age =23 or name ='san';
查詢結(jié)果:
使用DISTINCT關(guān)鍵字可以去除查詢結(jié)果中的重復(fù)記錄
語法格式如下:
select distinct 字段名 from 表名;
select distinct score from info;
查詢結(jié)果:
去重前:
使用ORDER BY可以對查詢的結(jié)果進行升序(ASC)和降序(DESC)排列,在默認情況下,ORDER BY按升序輸出結(jié)果。如果要按降序排列可以使用DESC來實現(xiàn)。
語法格式如下:
ORDER BY 字段名 [ASC|DESC];
select * from info ORDER BY score;
查詢結(jié)果:
通過GROUP BY子句可以將數(shù)據(jù)劃分到不同的組中,實現(xiàn)對記錄進行分組查詢。在查詢時,所查詢的列必須包含在分組的列中,目的是使查詢到的數(shù)據(jù)沒有矛盾。
select id,age from info GROUP BY age;
查詢結(jié)果:
查詢數(shù)據(jù)時,可能會查詢出很多的記錄。而用戶需要的記錄可能只是很少的一部分。這樣就需要來限制查詢結(jié)果的數(shù)量。LIMIT是MySQL中的一個特殊關(guān)鍵字。LIMIT子句可以對查詢結(jié)果的記錄條數(shù)進行限定,控制它輸出的行數(shù)。
select * from info ORDER BY score LIMIT 3;
查詢結(jié)果:
看完上述內(nèi)容,你們學(xué)會使用select語句單表查詢的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
標題名稱:MYSQLselect語句的單表查詢
本文來源:http://vcdvsql.cn/article40/gdgeeo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、動態(tài)網(wǎng)站、搜索引擎優(yōu)化、電子商務(wù)、ChatGPT、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)