好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > case 嵌套查詢與連接查詢你需要懂得

case 嵌套查詢與連接查詢你需要懂得

熱門標簽:美團地圖標注商戶認證注冊 電銷外呼系統軟件功能 北京400電話辦理多少錢 怎么給高德做地圖標注 榕城市地圖標注 咸陽電腦外呼系統運營商 承德地圖標注公司名需要花錢嗎 慶陽地圖標注 浙江穩定外呼系統供應商

1Case 子查詢連接查詢

復制代碼 代碼如下:

select * from score
create database demo
use demo
create table [user]
(
[uId] int identity( 1 ,1 ) primary key,
[name] varchar ( 50),
[level] int --1骨灰大蝦菜鳥
)
insert into [user] ( name, level ) values (' 犀利哥 ', 1 )
insert into [user] ( name, level ) values (' 小月月 ', 2 )
insert into [user] ( name, level ) values (' 芙蓉姐姐 ', 3 )
--case end 單值判斷 相當于 switch case
--then 后面的返回值類型必須一致
select [name] ,
case [level]
when 1 then '骨灰 '
when 2 then '大蝦 '
when 3 then '菜鳥 '
end as '等級 '
from [user]
use MySchool
select * from score
--case end 第二種用法,相當于多重 if 語句
select studentId ,
case
when english >=90 then ' 優 '
when english >=80 and english 90 then ' 良 '
when english >=70 and english 80 then ' 中 '
when english >= 60 and english 70 then ' 可 '
else ' 差 '
end as '成績 '
from score
order by english

-- 表中有A B C 三列 ,用 SQL 語句實現:當 A列大于 B 列時選擇A 列否則選擇 B 列,當B 列大于 C列時選擇 B 列否則選擇 C列。
select
case
when a > b then a
else b
end ,
case
when b > c then b
else c
end
from T

-- 練習
create table test
(
number varchar ( 10),
amount int
)
insert into test( number ,amount ) values ( 'RK1', 10 )
insert into test( number ,amount ) values ( 'RK2', 20 )
insert into test( number ,amount ) values ( 'RK3',- 30 )
insert into test( number ,amount ) values ( 'RK4',- 10 )
select number ,
case
when amount > 0 then amount
else 0
end as '收入 ' ,
case
when amount 0 then abs ( amount)
else 0
end as '支出 '
from test
--結果如下


復制代碼 代碼如下:

-- 有一張表student0 ,記錄學生成績
use demo
CREATE TABLE student0 ( name nvarchar (10 ), subject nvarchar (10 ), result int )
INSERT INTO student0 VALUES (' 張三 ', ' 語文' , 80)
INSERT INTO student0 VALUES (' 張三 ', ' 數學' , 90)
INSERT INTO student0 VALUES (' 張三 ', ' 物理' , 85)
INSERT INTO student0 VALUES (' 李四 ', ' 語文' , 85)
INSERT INTO student0 VALUES (' 李四 ', ' 數學' , 92)
INSERT INTO student0 VALUES (' 李四 ', ' 物理' ,null)
select * from student0
select [name] ,
isnull (sum ( case subject
when ' 語文 ' then result
end ),0 ) as '語文 ' ,
isnull (sum ( case subject
when ' 數學 ' then result
end ),0 ) as '數學 ' ,
isnull (sum ( case subject
when ' 物理 ' then result
end ),0 ) as '物理 '
from student0
group by [name]


復制代碼 代碼如下:

-- 子查詢將一個查詢語句做為一個結果集供其他 SQL 語句使用,就像使用普通的表一樣,
-- 被當作結果集的查詢語句被稱為子查詢。所有可以使用表的地方幾乎都可以使用子查詢來代替。
use myschool
select sName from ( select * from student ) as t
select 1,( select sum ( english) from score ) as ' 和 ',( select avg ( sAge) from student ) as ' 平均年齡 '
-- 查詢高一一班所有的學生
select * from student where sClassId =
( select cId from class where cName = '高一一班 ' )
-- 查詢高一一班 高二一班所有的學生
-- 子查詢返回的值不止一個。當子查詢跟隨在 = 、!= 、 、 = 、> 、 >= 之后
-- 子查詢跟在比較運算符之后,要求子查詢只返回一個值
-- 如果子查詢是多行單列的子查詢,這樣的子查詢的結果集其實是一個集合。可以使用 in 關鍵字代替 =號
select * from student where sClassId =
( select cId from class where cName in ( '高一一班 ' ,' 高二一班 '))
select * from student where sClassId in
( select cId from class where cName in ( '高一一班 ' ,' 高二一班 '))
-- 查詢劉關張的成績
select * from score where studentId in
( select sId from student where sName in ( '劉備 ' ,' 關羽 ', ' 張飛' ))
-- 刪除劉關張
delete from score where studentId in
( select sId from student where sName in ( '劉備 ' ,' 關羽 ', ' 張飛' ))

-- 實現分頁
-- 最近入學的個學生
select top 3 * from student
order by sId desc
-- 查詢第到個學生
select top 3 * from student
where sId not in ( select top 3 sId from student order by sId desc)
order by sId desc
-- 查詢到的學生
select top 3 * from student
where sId not in ( select top 6 sId from student order by sId desc)
order by sId desc
-- 上面是sql 2000 以前的實現方式。 SQLServer2005 后增加了Row_Number 函數簡化實現。
--sql 2005 中的分頁
select * from
( select row_number () over (order by sId desc ) as num,* from student ) as t
where num between 1 and 3
select * from
( select row_number () over (order by sId desc ) as num,* from student ) as t
where num between 4 and 6
select * from
( select row_number () over (order by sId desc ) as num,* from student ) as t
where num between 7 and 9
select * from
( select row_number () over (order by sId desc ) as num,* from student ) as t
where num between 3 *( 3- 1 ) + 1 and 3 *3
-- 表連接
-- 交叉連接cross join
select * from student
cross join class
-- 內連接inner join...on...
select * from student
inner join class on sClassId = cId
select * from class
-- 查詢所有學生的姓名、年齡及所在班級
select sName , sAge, cName ,sSex from student
inner join class on sClassId = cId
where sSex =' 女 '
-- 查詢年齡超過歲的學生的姓名、年齡及所在班級
select sName , sAge, cName from class
inner join student on sClassId = cId
where sAge > 20
-- 外連接
--left join...on...
select sName , sAge, cName from class

標簽:拉薩 貴州 呼和浩特 江蘇 上海 昭通 重慶 新鄉

巨人網絡通訊聲明:本文標題《case 嵌套查詢與連接查詢你需要懂得》,本文關鍵詞  case,嵌套,查詢,與,連接,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《case 嵌套查詢與連接查詢你需要懂得》相關的同類信息!
  • 本頁收集關于case 嵌套查詢與連接查詢你需要懂得的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 乳巨揉みま痴汉电车中文字幕动漫| 下面痒痒的好难受好想做| 亚洲精品久久久久久久久豆丁网| 黄色工厂在线播放| 被陌生人调j糙汉np| 岳在厨房婬荡呻吟干柴烈火视频| aV91肉丝一区二区电影| 91精品人妻熟女毛片A片骨灰盒| 欧洲一级做a爱在线观看| 人人插人人搞| 国产91精品不卡在线| 日本午夜精品一区二区三区 | 99在线国内精品自产拍| 日产免费自线一二区| 强吻胸摸来摸去胸露来| 热99re69精品8在线播| 普京谈俄罗斯色情泛滥| chins国产人妻videos| 绿帽超h刺激小说| 我和老太真实的乱小说| 国产aV精品一区二区三区久久久 | 美女脱光内裤| 波多野结衣大战欧美黑人| 中国美女hdxxxxx| 亚洲人成电影在线看片| www国产亚洲精品久久麻豆 | 我可以陪你去看星星| 麻豆网站在线播放| 18????国产?免费视频| 做a视频在线观看| 短篇山村肉耽h| 无码人妻一区二区三区神菜美| 国产精品99精品久久免费| 国产乱子伦无码观看| 一起草cad免费看| 欧美特欧美特级一片| 商务旅行戴绿帽子女老板同房| 一级日本婬片A片高潮中| 欧美一级A片| 女票炸了在线播放| CHINESE壮男GAY野战强迫TUBE|