詳解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)文章
小米正式開(kāi)源 SQL 智能優(yōu)化與改寫工具 SOAR
SOAR,即 SQL Optimizer And Rewriter,是一款 SQL 智能優(yōu)化與改寫工具,由小米運(yùn)維 DBA 團(tuán)隊(duì)出品。下面通過(guò)本文給大家分享小米正式開(kāi)源 SQL 智能優(yōu)化與改寫工具 SOAR,感興趣的朋友一起看看吧2018-11-11
SQLServer 跨庫(kù)查詢實(shí)現(xiàn)方法
不使用鏈接的服務(wù)器名,而提供特殊的連接信息,并將其作為四部分對(duì)象名的一部分2012-04-04
SQL?Server數(shù)據(jù)庫(kù)變成單個(gè)用戶如何解決
本文主要介紹了SQL?Server數(shù)據(jù)庫(kù)變成單個(gè)用戶如何解決,文中圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-11-11
SqlServer高版本數(shù)據(jù)備份還原到低版本
這篇文章主要為大家詳細(xì)介紹了SqlServer高版本數(shù)據(jù)備份還原到低版本的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11
EXEC(EXECUTE)函數(shù)訪問(wèn)INSERTED或DELETED的內(nèi)部臨時(shí)觸發(fā)表
近段時(shí)間,MS SQL方面,一直需要開(kāi)發(fā)動(dòng)態(tài)方面的存儲(chǔ)過(guò)程或是觸發(fā)器以及表函數(shù)。因?yàn)槌绦蛟O(shè)計(jì)一開(kāi)始就是讓用戶動(dòng)態(tài)添或是刪除一個(gè)表的字段,然而這個(gè)表的相關(guān)存儲(chǔ)過(guò)程或是觸發(fā)器以及為報(bào)表準(zhǔn)備的表函數(shù)也會(huì)隨之這個(gè)表的字段變化而變化2012-01-01
sql?server?數(shù)據(jù)庫(kù)鎖教程及鎖操作方法
SQL?Server數(shù)據(jù)庫(kù)鎖機(jī)制是保證并發(fā)性和數(shù)據(jù)一致性的關(guān)鍵,它通過(guò)不同級(jí)別的鎖和鎖類型(共享、排他、更新等)來(lái)管理資源訪問(wèn),了解和正確使用鎖機(jī)制,可以幫助開(kāi)發(fā)者設(shè)計(jì)高效、并發(fā)性強(qiáng)的數(shù)據(jù)庫(kù)應(yīng)用,本文介紹sql?server?數(shù)據(jù)庫(kù)鎖教程及鎖操作,感興趣的朋友一起看看吧2025-02-02
通過(guò)IP訪問(wèn)sql?server2022數(shù)據(jù)庫(kù)
本文主要介紹了通過(guò)IP訪問(wèn)sql?server2022數(shù)據(jù)庫(kù),文中通過(guò)圖文介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2024-04-04
SQL SERVER數(shù)據(jù)轉(zhuǎn)換失敗的原因及解決方法
在使用 SQL Server 數(shù)據(jù)庫(kù)過(guò)程中,我們經(jīng)常會(huì)遇到數(shù)據(jù)轉(zhuǎn)換失敗的情況,當(dāng) SQL Server 在執(zhí)行查詢、插入或更新操作時(shí),如果發(fā)現(xiàn)數(shù)據(jù)類型不匹配或無(wú)法進(jìn)行有效的轉(zhuǎn)換,就會(huì)拋出轉(zhuǎn)換失敗的錯(cuò)誤,本文給大家介紹了SQL SERVER數(shù)據(jù)轉(zhuǎn)換失敗的原因及解決方法2024-09-09
SQL?Server2022安裝提示"安裝程序在運(yùn)行作業(yè)UpdateResult時(shí)失敗"解決方法
平時(shí)大家在安裝數(shù)據(jù)庫(kù)的時(shí)候,我也相信大家會(huì)遇到過(guò)一些報(bào)錯(cuò)導(dǎo)致安裝失敗,下面這篇文章主要給大家介紹了關(guān)于SQL?Server2022安裝提示"安裝程序在運(yùn)行作業(yè)UpdateResult時(shí)失敗"的解決方法,需要的朋友可以參考下2023-05-05

