最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

sql查詢給表起別名要點小結(jié)(涉及嵌套查詢)

 更新時間:2022年09月06日 09:24:17   作者:foas9we  
通過使用 SQL,可以為表名稱或列名稱指定別名,下面這篇文章主要給大家介紹了關于sql查詢給表起別名要點(涉及嵌套查詢)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下

可以通過空格或者as給表起別名

但是注意如果操作的數(shù)據(jù)庫是Oracle的話,只能使用空格,as不符合Oracle的語法。

舉個栗子

簡單查詢中使用別名

select *
from student s
where s.id = '10';

在簡單的查詢中使用別名,一般沒有特別需要注意的地方,要做的操作少

復雜查詢中使用別名

題目概要:有三個表格,student(sno,sname,ssex,sbirthday,class)

score(sno,cno,degree)

course(cno,cname,tno)

查詢選修“3-105”課程的成績高于“109”號同學成績的所有同學的記錄。

答案:

select *
 from (select s.sno,s.sname,s.ssex,s.sbirthday,s.class,    sc.degree,c.cno,c.cname,c.tno from student s , course c ,score sc where s.sno = sc.sno and c.cno = sc.cno) ss
 where  ss.cno = '3-105' and ss.degree >( select degree from score where sno = '109' and cno = '3-105');

可以看到,為了方便操作,我們重新定義了一個表格ss,這個表格是一個大表格同時包含了,以上三個表中的內(nèi)容。但是要注意以下幾點,不然容易出錯

要全部顯示新定義表格的值時,不能直接使用*

比如聲明的答案中如果改為

select *
 from (select * from student s , course c ,score sc where s.sno = sc.sno and c.cno = sc.cno) ss
 where  ss.cno = '3-105' and ss.degree >( select degree from score where sno = '109' and cno = '3-105');

命令行會顯示列未明確定義,因為我們要現(xiàn)在指定的列作為一個新的表,但是有些列的列名是重復的,我們需要指定其中的一個。

在嵌套查詢語句中無法使用新創(chuàng)的表,因為嵌套查詢里面的代碼是一個完整的執(zhí)行段,會從頭開始運行?反正在里面調(diào)用會報錯

select *
 from (select * from student s , course c ,score sc where s.sno = sc.sno and c.cno = sc.cno) ss
 where  ss.cno = '3-105' and ss.degree >( select degree from ss where sno = '109' and cno = '3-105');

這段SQL里面在where里面的子查詢使用了ss新表,編譯會顯示表或視圖不存在錯誤。

總結(jié)

到此這篇關于sql查詢給表起別名要點(涉及嵌套查詢)的文章就介紹到這了,更多相關sql查詢給表起別名內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

最新評論

长沙市| 百色市| 九江市| 咸丰县| 彭阳县| 景泰县| 伊春市| 富蕴县| 泰州市| 广平县| 永胜县| 郧西县| 东明县| 遂溪县| 高邑县| 临沂市| 神池县| 临猗县| 惠东县| 白玉县| 顺昌县| 皮山县| 和顺县| 蕉岭县| 西丰县| 疏附县| 榆社县| 延寿县| 曲松县| 沧源| 内乡县| 新和县| 大田县| 松江区| 平江县| 敦煌市| 库伦旗| 虹口区| 延长县| 吉木乃县| 泸西县|