詳解SQL中的DQL查詢語(yǔ)言
DQL
DQL:data Query language 數(shù)據(jù)查詢語(yǔ)言
格式:select[distinct] 字段1,字段2 from 表名 where 控制條件
(distinct: 顯示結(jié)果時(shí),是否去除重復(fù)列 給哪一列去重就在哪一列字段前加入distinct)
學(xué)生表
(1)查詢表中的所有信息
SELECT * FROM student
(2)查詢表中的所有學(xué)生姓名和對(duì)應(yīng)的英語(yǔ)成績(jī)
SELECT name,english FROM student
注:可顯示部分字段,如果顯示哪列數(shù)據(jù),就直接寫字段名稱即可
(3) 過(guò)濾表中重復(fù)的math成績(jī)
SELECT DISTINCT math FROM student;
(4) 創(chuàng)建一個(gè)student類 添加屬性id,name,sex,chinese,English,math
并隨機(jī)增加5條屬性
select * from student; – 查詢英語(yǔ)在70到75之間的學(xué)生的信息 -- select * from student where english BETWEEN 70 AND 75; – 查詢語(yǔ)文是80或者82或者90分的學(xué)生信息 -- select * from student where chinese IN(80,82,90); – 查詢所有首字母為l的學(xué)生的成績(jī) -- select * from student where name like "l%"; – 查詢數(shù)學(xué)大于80且語(yǔ)文大于80 的同學(xué) -- select * from student where math>80 and chinese>90; – 對(duì)數(shù)學(xué)成績(jī)排序后輸出 (默認(rèn)升序 ASC) -- select * from student order by math; – 對(duì)數(shù)學(xué)成績(jī)排序后輸出(降序 DESC) -- SELECT * FROM student order by math DESC; – 指定多個(gè)字段進(jìn)行排序,先按第一個(gè)字段進(jìn)行排序,如果相同則按第二個(gè)字段進(jìn)行排序 -- SELECT * FROM student ORDER BY math DESC,chinese DESC; – WHERE后可以加 ORDER BY -- SELECT * from student where name like "%l" ORDER BY math DESC; – 顯示student 表格中的前3行 SELECT * from student LIMIT 2; – 顯示student 表格中的第3~5行 SELECT * from student LIMIT 2,3; -- 2表示偏移量,3表示顯示的行數(shù)
附錄:①在where中經(jīng)常使用的運(yùn)算符
注:邏輯運(yùn)算符優(yōu)先級(jí) not>and>or
*②select |{column1|expression、column2|expression,…}from table; select column as 別名 from table;
注:
expression : mysql支持表達(dá)式 加減乘除;
as: 表示給某一列起別名;并且as 可以省略;
– 關(guān)聯(lián)(1對(duì)N)
create table customer( id int PRIMARY KEY auto_increment, name varchar (20) not null, adress varchar (20) not null ); create table orders( order_num varchar(20) PRIMARY KEY, price FLOAT not NULL, customer_id int, -- 進(jìn)行和customer 關(guān)聯(lián)的字段 外鍵 constraint cus_ord_fk foreign key (customer_id) REFERENCES customer(id) ); insert into customer(name,adress) values("zs","北京"); insert into customer(name,adress) values("ls","上海"); SELECT * from customer; INSERT INTO orders values("010",30.5,1); INSERT INTO orders values("011",60.5,2); INSERT INTO orders values("012",120.5,1); SELECT * from orders;
主鍵和唯一標(biāo)識(shí)
unique 唯一性標(biāo)識(shí)
primary key 主鍵 (auto_increment 設(shè)置自動(dòng)增長(zhǎng)) -- UNIQUE 表約束 唯一性標(biāo)識(shí) -- PRIMARY KEY 主鍵 CREATE TABLE t4 ( id INT PRIMARY KEY auto_increment, NAME VARCHAR (20) NOT NULL, gender CHAR (5) NOT NULL, idCard VARCHAR (20) UNIQUE -- UNIQUE 唯一性標(biāo)識(shí) ); desc t4; insert into t4 (name,gender,idCard) VALUE("zs","man","110"); insert into t4 (name,gender,idCard) VALUE("ls","woman","112");
總結(jié)
以上所述是小編給大家介紹的SQL中的DQL查詢語(yǔ)言,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
深入SQL Server 跨數(shù)據(jù)庫(kù)查詢的詳解
本篇文章是對(duì)SQL Server中的跨數(shù)據(jù)庫(kù)查詢進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06解決MSSQL2005遠(yuǎn)程連接sql2000非默認(rèn)端口數(shù)據(jù)庫(kù)的問(wèn)題
MSSQL2005連接sql2000非默認(rèn)端口數(shù)據(jù)庫(kù)的問(wèn)題給我折騰了快一天了,快瘋了,連接TCP/IP默認(rèn)1433端口沒(méi)問(wèn)題,連接其他端口數(shù)據(jù)庫(kù)問(wèn)題有了。2007-11-11sql server 2016不能全部用到CPU的邏輯核心數(shù)的問(wèn)題
服務(wù)器總共CPU核心有72核,但sql 只能用到40核心,想信也有很多人遇到這問(wèn)題,那么今天這節(jié)就先說(shuō)說(shuō)這問(wèn)題是怎么出現(xiàn)的2023-05-05列出SQL Server中具有默認(rèn)值的所有字段的語(yǔ)句
上個(gè)星期我在對(duì)一個(gè)供應(yīng)商開發(fā)的數(shù)據(jù)庫(kù)按規(guī)定進(jìn)行故障排除的時(shí)候,我們需要對(duì)他們數(shù)據(jù)庫(kù)中50個(gè)表的每一個(gè)都進(jìn)行查看,以確保所有期望是默認(rèn)值的字段都被分配了默認(rèn)值。你可以想象這是一個(gè)多么令人畏懼的工作,而我立即提出了這個(gè)問(wèn)題。有沒(méi)有一個(gè)比在SQL Server管理套件中打開每一個(gè)表來(lái)查看這個(gè)schema的更好方法嗎?2008-10-10SQL Server中查詢結(jié)果超出了查詢時(shí)間范圍解決方法
在本篇文章里小編給大家整理的是關(guān)于SQL Server中查詢結(jié)果超出了查詢時(shí)間范圍解決方法,有需要的朋友們學(xué)習(xí)下。2019-11-11SQL Server誤區(qū)30日談 第15天 CheckPoint只會(huì)將已提交的事務(wù)寫入磁盤
這個(gè)誤區(qū)是由于太多人對(duì)日志和恢復(fù)系統(tǒng)缺少全面的了解而存在已久。CheckPoint會(huì)將自上次CheckPoint以來(lái)所有在內(nèi)存中改變的頁(yè)寫回磁盤(譯者注:也就是臟頁(yè)),或是在上一個(gè)CheckPoint讀入內(nèi)存的臟頁(yè)寫入磁盤2013-01-01編寫高質(zhì)量代碼改善C#程序——使用泛型集合代替非泛型集合(建議20)
這篇文章主要介紹編寫高質(zhì)量的代碼有助于改善C#程序,在開發(fā)過(guò)程中集合用的比較多,如何把集合使用好,在開發(fā)過(guò)程必須掌握的技巧,下面這篇文章就給大家詳細(xì)介紹編寫高質(zhì)量代碼改善C#程序——使用泛型集合代替非泛型集合(建議20),需要的朋友可以參考下2015-08-08sql server清理日志的實(shí)現(xiàn)步驟
清理 SQL Server 日志是數(shù)據(jù)庫(kù)管理的一項(xiàng)重要工作,可以釋放磁盤空間并提高數(shù)據(jù)庫(kù)性能,本文就來(lái)詳細(xì)的介紹一下,感興趣的可以了解一下2023-10-10