您好,登錄后才能下訂單哦!
小生博客:http://xsboke.blog.51cto.com
-------謝謝您的參考,如有疑問,歡迎交流
案例一:表如下圖所示
實驗需求:
1.在products表中查詢出廠日期晚于2014年4月的水果信息
語句:select * from products where 出廠日期>'2014-04-30' and 種類='水果'
2.在products表中分組查詢所有水果、蔬菜、堅果的總成本
語句:select 種類,SUM(成本) as 總成本from products group by 種類
3.在products表中查詢所有水果的信息,并按照成本從高到低的順序顯示結果
語句:select * from products where 種類='水果' order by 成本 desc
4.在products表中查詢成本在1—5元之間的蔬菜信息
語句:select * from products where 種類='蔬菜' and 成本 between 1 and 5
5.將products表中所有水果的名稱、種類和出廠日期信息插入到新表products_new中
語句:select 名稱,種類,出廠日期 intoproducts_new from products where 種類='水果'
select *
from products
where出廠日期>='2011-04-01' and 種類='水果'
select SUM(成本) as 總成本,種類
from products
group by 種類
select *
from products
where種類='水果'
order by 成本 desc.
select *
from products
where種類='蔬菜' and 成本 between '1' and'5'
select名稱,種類,出廠日期
into products_new
from products
where種類='水果'
案例二:表如下圖所示
實驗需求:
1、在products表和sales表中查詢產品的名稱、種類、成本、銷售地點和銷售價格。
語句:select products.名稱,products.種類,products.成本,sales.銷售地點,sales.銷售價格
From products,sales
Where products.名稱=sales.名稱
或者:select a.名稱,a.種類,a.成本,b.銷售地點,b.銷售價格
From products as a inner join sales as b on a.名稱=b.名稱
2、在products表和sales表中查詢銷往海南的產品名稱、種類、成本和銷售價格。
語句:select products.名稱,products.種類,products.成本,sales.銷售價格
From products,sales
Where products.名稱=sales.名稱 and 銷售地點=’海南’
select products.名稱,products.種類,products.成本,sales.銷售價格,sales.銷售地點
from products inner join sales
on products.名稱=sales.名稱
select products.名稱,products.種類,products.成本,sales.銷售價格,sales.銷售地點
from products inner join sales
on products.名稱=sales.名稱
where銷售地點='海南'
案例三:表如下圖所示
實驗需求:
1、查詢王明的成績?結果:王明 90
Select 姓名,成績 from student where 姓名=’王明’
2、給王明加2分?
Update student set 成績=成績+2 where 姓名=’王明’
3、查詢備注不為空的學生?
Select * from student where 備注 is not null
4、查詢成績大于95分以上的學生?
Select * from student where 成績>95
5、王明轉學,把王明刪掉?
Delete from student where 姓名=‘王明’
6、來了一位新同學,名字叫于美麗?
Insert into student values(20,’于美麗’,’110110110’,3,100,’勤奮好學’)
7、查詢成績大于95分,并且班級是2班的都有誰?
Select * from student where 成績>95 and 所在班級=2
8、查詢成績大于95分,并且班級是1、2班的都有誰?
Select * from student where 成績>95 and 所在班級 between1 and 2
9、查詢平均成績?
Select avg(成績) as 平均成績 from student
10、使用truncate刪除所有的數據
Truncate table student
select成績
from [student-1]
where姓名='王明'
update [student-1]
set成績=成績+2
where姓名='王明'
select *
from [student-1]
where備注 is not null
select *
from [student-1]
where成績>'95'
delete
from [student-1]
where姓名='王明'
insert into [student-1]
(姓名) values ('于美麗')
select *
from [student-1]
where成績>='95' and 所在班級='2'
select *
from [student-1]
where成績>='95' and 所在班級 between '1' and'2'
select AVG(成績) as 平均成績
from [student-1]
truncate table Student
實驗案例四:表如下圖所示
實驗需求:
1、顯示表中全部內容
select * from 員工信息表
2、顯示工資大于5000員工的所有信息
select * from 員工信息表
where 工資>=5000
3、顯示所有在1950到1988年之間出生員工的所有信息
select * from 員工信息表
where 出生日期>='1950'and 出生日期<='1988'
4、查詢出所有住在昌平的員工
select * from 員工信息表
where 家庭住址 like '%昌平%'
5、所有銷售員的工資漲幅1000
update 員工信息表
set 工資=工資+1000
where 職位='銷售員'
6、刪除工資小于3000員工的記錄
delete from 員工信息表
where 工資<=3000
7、所有經理的工資下調10%
update 員工信息表
set 工資=工資*0.9
where 職位 like '%經理'
select *
from員工信息表
select *
from員工信息表
where工資>='5000'
select *
from員工信息表
where出生日期 between '1950' and'1988'
select *
from員工信息表
where職位 like '%經理%'
update員工信息表
set工資=工資+1000
where職位='銷售員'
delete
from員工信息表
where工資<'3000'
update員工信息表
set工資=工資*0.9
where職位 like '%經理'
案例五:表如下圖所示
1、查詢年齡大于35,小于 50,并且職位是員工?
語句:select * from 員工信息表
where 年齡>35 and 年齡<50 and 職位='員工'
2、查詢員工的平均年齡?
語句:select AVG(年齡) as 平均年齡 from 員工信息表
3、查詢各種職位的平均年齡,并且按照每種職位的平均年齡降序排序?
語句:select 職位,AVG(年齡) as 平均年齡 from 員工信息表
group by 職位
order by AVG(年齡) desc
4、查詢年齡最大和最小的人是誰?
語句:select 員工姓名,年齡 from 員工信息表
where 年齡=(select MAX(年齡)
from 員工信息表)
5、查詢每種職位有多少人?并且按每種職位的人數升序排序?
語句:select 職位,COUNT(員工id) as 人數
from 員工信息表
group by 職位
6、查詢年齡大于等于50歲和小于30歲的都有哪些人?
語句:select * from 員工信息表
where 年齡>=50 or 年齡<30
select *
from [員工信息表-2]
where職位='員工' and 年齡 between '35' and'50'
select AVG(年齡) as 平均年齡
from [員工信息表-2]
select AVG(年齡) as 平均年齡,職位
from [員工信息表-2]
group by 職位
order by AVG(年齡) desc
select年齡,員工姓名
from [員工信息表-2]
where年齡=( select MAX(年齡) from [員工信息表-2])
or年齡=( select MIN(年齡) from [員工信息表-2])
select COUNT(職位) as 人數,職位
from [員工信息表-2]
group by 職位
order by COUNT(職位) asc
select *
from [員工信息表-2]
where年齡>='50' or 年齡<='30'
案例六:表如下圖所示
實驗需求:
1、兩個表查詢
select 學生表.姓名,學生表1.電話,學生表1.家庭住址
from 學生表,學生表1
where 學生表.學生id=學生表1.學生id
2、三個表的查詢
select 學生表.姓名,課程表.課程名,成績表.分數
from 學生表,課程表,成績表
where 學生表.學生id=成績表.學生id AND 成績表.課程ID=課程表.課程ID
3、合并兩個結果集
SELECT 姓名,學號,班級,國籍
FROM 二班
UNION
select 姓+' '+名,學號,班級,國籍
from 一班
order by 班級 desc,學號 asc
4、內聯接(查找參加考試的學生的姓名和CNT成績,電話)
select s.姓名,s.電話,c.CNT
FROM 學生基本信息表 AS S INNER JOIN 學生成績表 AS C
ON S.姓名=C.姓名
5、左外連接(查找本班學生的姓名和CNT才成績,電話)
select s.姓名,s.電話,c.CNT
FROM 學生基本信息表 AS S LEFT OUTER JOIN 學生成績表 AS C
ON S.姓名=C.姓名
6、右外連接(查找參加本次考試的學生的姓名和CNT才成績,電話)
select s.姓名,s.電話,c.CNT
FROM 學生基本信息表 AS S RIGHT OUTER JOIN 學生成績表 AS C
ON S.姓名=C.姓名
7、完全連接(查找所有學生的考試情況)
select s.姓名,s.電話,c.CNT
FROM 學生基本信息表 AS S FULL OUTER JOIN 學生成績表 AS C
ON S.姓名=C.姓名
8、自連接(查找每個員工的上司姓名)
SELECT Y.員工姓名,s.員工姓名 AS 上司姓名
from 員工信息表 as y inner join 員工信息表 as s
on y.上司ID=S.員工ID
9、子查詢(查找每個季度的生產數量,百分比)
select 季度,sum(生產數量) AS 每個季度的生產數量,
str((sum(生產數量)/(select sum(生產數量) from 生產表))*100)+'%' AS 百分比
from 生產表
group by 季度
order by 季度
10、在where子句中使用SELECT ,查找課程ID=1并且成績〉80的學生
select 學生表.姓名
from 學生表
where 80<(select 分數 from 成績表
where 學生表.學生ID=成績表.學生ID AND 成績表.課程ID=1)
11、交叉連接
SELECT T.教師姓名,c.課程名
from 教員基本信息表 AS t cross join 課程表 AS C
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。