婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > SQL中一些小巧但常用的關鍵字小結

SQL中一些小巧但常用的關鍵字小結

熱門標簽:簡單的智能語音電銷機器人 小程序智能電話機器人 南昌呼叫中心外呼系統哪家好 ai電話電話機器人 怎么申請400熱線電話 泗洪正規電話機器人找哪家 河北便宜電銷機器人軟件 湖南保險智能外呼系統產品介紹 怎么去開發一個電銷機器人

前言

前面的幾篇文章中,我們大體上介紹了 SQL 中基本的創建、查詢語句,甚至也學習了相對復雜的連接查詢和子查詢,這些基本功相信你也一定掌握的不錯,那么本篇則著重介紹幾個技巧方面的關鍵字,能夠讓你更快更有效率的寫出一些 SQL。

下面話不多說了,來一起看看詳細的介紹吧

起別名

在實際的項目中,有時候我們的表名、字段名過于復雜以致于我們的 SQL 寫出來過長、過于復雜,這時候我們往往會通過起別名的方式將一些名字較長、較為復雜的字段或是表名簡化。

我們可以使用別名(Alias)來對數據表或者列進行臨時命名,既然是別名,也就是說并不會修改原表或列的原始名稱,僅僅用于當前查詢的簡介化顯示。

給表起別名:

select * from person as p
where p.id = 1;

一旦為表執行了別名,那么本次查詢的子查詢語句中都可以直接引用別名替代原表的引用。

給列起別名:

select name as n,age as a from perosn;

除了使用關鍵字 as 來給表或是列起別名外,還可以直接使用空格字符達到同樣的效果,但是個人認為要么全部使用 as 進行別名,要么全部使用空格進行別名,不要交叉使用使得你的 SQL 復雜又難以看懂。

消除重復記錄

有時候,我們的數據庫中會存在兩條完全一樣的數據,我們也叫做冗余數據,當然不希望在查詢數據的時候查出來這么些冗余的重復數據,我們要把它們過濾掉。

LeetCode 上的一道簡單題:

有一個courses 表 ,有: student (學生) 和 class (課程)。

請列出所有超過或等于5名學生的課。

例如,表:

+---------+------------+
| student | class  |
+---------+------------+
| A  | Math  |
| B  | English |
| C  | Math  |
| D  | Biology |
| E  | Math  |
| F  | Computer |
| G  | Math  |
| H  | Math  |
| I  | Math  |
+---------+------------+

應該輸出:

+---------+
| class   |
+---------+
| Math    |
+---------+

你可以花個一分鐘思考一下,運用我們之前的基本功,應該是不難的。

顯然是需要用到分組的,想要統計每門課有多少人選,就得按照學科進行分組,每個分組內就是該門學科選修的學生記錄。

那么 SQL 語句也就信手拈來了:

select class from courses
group by class
having count(student) >=5 

但是你提交后在海量測試用例下,會返回給你解答錯誤的提示,不信你試試,問題出在哪?

問題就出現在冗余數據這個邊界條件沒有被考慮,如果 A 選了兩次 Math,當我們對 Math 這個分組進行計數時就會多算一次選 Math 的人數,實際上這是不符合邏輯的,我們需要過濾掉那些重復選擇的數據記錄。

解決方案如下:

select class from courses
group by class
having count(distinct student) >=5 

有些人可能看出來了,我們在 count 函數的列參數前添加了一個 distinct 關鍵字,它表示如果 student 列的值重復出現的話只計數一次。

當然,distinct 除了可以在聚合函數中使用外,也可以直接用在查詢語句的列篩選階段,例如:

//取出所有的學生,不允許重復名字的學生同時出現
select distinct name from students

連接結果集

UNION 運算符可以將一個或多個 SELECT 語句的結果連接組合成一個結果集,但要求兩個或多個結果具有相同數量的列,列的數據類型相同,舉個例子:

構建一個學生表:

+----+------+----------+-------+
| id | name | uNo  | fees |
+----+------+----------+-------+
| 1 | 張三 | 15263501 | 18000 |
| 2 | 李四 | 15263506 | 15960 |
| 3 | 王二 | 15263512 | 2500 |
+----+------+----------+-------+

學生表主要有學生的姓名,學號和學費。

構建一個教師表:

+----+--------+------+--------+
| id | name | tNo | salary |
+----+--------+------+--------+
| 1 | 李老師 | 1001 | 10000 |
| 2 | 楊老師 | 1002 | 15000 |
| 3 | 曹老師 | 1030 | 5000 |
+----+--------+------+--------+

現在有一個需求,需要拿到全校所有人的姓名和編號,包括學生和老師。一般來說,我們兩次 select 查詢就好了,但是沒法合并在一個結果集中顯示,這是一個問題。

于是我們可以使用 union 來連接兩個結果并在一張表中顯示出來:

select name,uNo from students
union
select name,tNo from teacher

查詢結果:

+--------+----------+
| name   | uNo      |
+--------+----------+
| 張三   | 15263501 |
| 李四   | 15263506 |
| 王二   | 15263512 |
| 李老師 | 1001     |
| 楊老師 | 1002     |
| 曹老師 | 1030     |
+--------+----------+

看起來是不是直觀了很多,除此之外的是,如果兩個結果集中存在完全重復的數據記錄,合并后的結果集中不會重復出現該數據記錄。

當然了,如果你不需要在合并結果集的時候刪除掉重復的數據行,你可以轉而使用關鍵字 UNION ALL 替代 UNION。

TOP

TOP 子句用于從一張數據表中取回前 N 個或者 X% 的記錄,但是需要注意的是,沒有一個數據庫實現是支持 TOP 的,各自有各自的關鍵字作為替代,例如 MySQL 和 SQLserver 使用 LIMIT 關鍵字,Oracle 使用 ROWNUM 關鍵字。

例如:

select * from students limit 2;

MySQL 數據庫取出前兩條數據,等效的 Oracle 數據庫寫法:

select * from students
rownum = 2

以上的一些關鍵字雖然逐個看起來很簡單,但有時候可能會幫上你大忙的,不要忘記使用它們!。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • SQL語句的各個關鍵字的解析過程詳細總結
  • sql連接查詢中,where關鍵字的位置講解
  • sql中的left join及on、where條件關鍵字的區別詳解
  • Mysql帶And關鍵字的多條件查詢語句
  • MySQL單表多關鍵字模糊查詢的實現方法
  • MySQL 5.7中的關鍵字與保留字詳解
  • sql server關鍵字詳解大全(圖文)

標簽:柳州 荊門 景德鎮 淮安 瀘州 威海 江蘇 那曲

巨人網絡通訊聲明:本文標題《SQL中一些小巧但常用的關鍵字小結》,本文關鍵詞  SQL,中,一些,小巧,但,常用的,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《SQL中一些小巧但常用的關鍵字小結》相關的同類信息!
  • 本頁收集關于SQL中一些小巧但常用的關鍵字小結的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    国产精品性做久久久久久| 91精品国产福利在线观看| 亚洲1区2区3区视频| 欧美一区二区在线免费播放| 亚洲不卡在线观看| 国产成+人+日韩+欧美+亚洲| 亚洲人吸女人奶水| 在线区一区二视频| 国产一区二区按摩在线观看| 亚洲欧美偷拍三级| 久久精品亚洲精品国产欧美| 日韩亚洲欧美综合| 99久久国产综合精品色伊| 亚洲精品日日夜夜| 国产精品美女久久久久av爽李琼 | 国产精品成人在线观看| 欧美日韩久久一区二区| 国产成人精品午夜视频免费| 免费观看在线色综合| 中文字幕一区免费在线观看| 欧美伊人久久大香线蕉综合69| 亚洲高清不卡在线| 国产欧美日韩久久| 欧美丰满一区二区免费视频| 777亚洲妇女| 一级精品视频在线观看宜春院 | 午夜精品久久久久久| 亚洲午夜免费视频| 粉嫩蜜臀av国产精品网站| 国产精品成人一区二区艾草| 日韩精品一区二区三区老鸭窝| 国产日韩v精品一区二区| 久久综合久久综合久久综合| 一区二区中文字幕在线| 精品国产乱码久久久久久夜甘婷婷| 日韩三级视频在线看| 日韩美一区二区三区| 国产精品色哟哟| 狠狠v欧美v日韩v亚洲ⅴ| 欧美日韩中文字幕一区| 中文字幕一区二区不卡 | 国产精品日韩成人| 精品中文字幕一区二区小辣椒| 欧美色图片你懂的| 亚洲国产va精品久久久不卡综合| 9l国产精品久久久久麻豆| 中文字幕免费不卡在线| 成人中文字幕合集| 国产精品高清亚洲| av激情成人网| 亚洲国产wwwccc36天堂| 3atv一区二区三区| 久久成人免费网站| 久久久久九九视频| 福利一区在线观看| 亚洲同性gay激情无套| 91女厕偷拍女厕偷拍高清| 一个色在线综合| 91精品久久久久久久91蜜桃| 午夜伦理一区二区| 国产精品午夜春色av| 91香蕉视频在线| 麻豆91在线播放免费| 久久久99精品久久| 欧美日韩不卡在线| 91美女片黄在线观看| 日本一区二区三区在线不卡| 欧美成人一级视频| 欧美成人一区二区| 国产区在线观看成人精品| 国产色婷婷亚洲99精品小说| 日韩欧美成人午夜| 久久综合九色综合久久久精品综合 | 日本一区二区三区高清不卡 | 国产欧美一区二区精品久导航| 亚洲精品在线网站| 国产呦萝稀缺另类资源| 9191成人精品久久| 欧美在线免费观看亚洲| www.综合网.com| av亚洲精华国产精华精| 国产黄色91视频| 国产一区二区视频在线播放| 五月激情丁香一区二区三区| 午夜视频在线观看一区二区三区 | 美腿丝袜亚洲一区| 一区二区三区四区亚洲| 中文字幕va一区二区三区| 欧美一区二区人人喊爽| 精品国一区二区三区| 中文在线一区二区| 亚洲女性喷水在线观看一区| 亚洲综合一区二区三区| 日韩制服丝袜av| 麻豆精品一二三| av在线这里只有精品| 日本精品视频一区二区| 欧美日韩高清一区| 久久久噜噜噜久久人人看| 亚洲欧美日韩一区| 精品一区二区三区久久久| 99久久精品免费看国产 | 欧美日韩一级大片网址| 国产日韩成人精品| 国产精品系列在线观看| 成人激情av网| 国产最新精品精品你懂的| 日本vs亚洲vs韩国一区三区二区 | 亚洲精品国产第一综合99久久| 国模大尺度一区二区三区| 日韩一区二区三免费高清| 91麻豆高清视频| 麻豆国产91在线播放| 欧美日本一区二区在线观看| 99精品欧美一区二区三区小说 | 99re这里只有精品6| 欧美大片在线观看| 亚洲综合在线第一页| k8久久久一区二区三区| 久久先锋影音av| 精品一区二区免费看| 欧美日韩精品三区| 三级欧美韩日大片在线看| 欧美三级午夜理伦三级中视频| 国产精品久久综合| 一本久久a久久精品亚洲| 国产精品免费视频网站| 成人在线综合网站| 国产精品久久精品日日| av综合在线播放| 亚洲激情自拍偷拍| 欧美日韩一区在线| 免费一级片91| 欧美经典一区二区| 99久久伊人精品| 亚洲宅男天堂在线观看无病毒| 欧美视频中文字幕| 国产在线精品国自产拍免费| 国产精品视频看| 欧美精品第1页| 成人蜜臀av电影| 亚州成人在线电影| 中文字幕va一区二区三区| 欧美在线不卡一区| 国产一区二区三区四区在线观看| 国产欧美日韩综合| 欧美一卡二卡在线| 99精品偷自拍| 狠狠色丁香婷婷综合| 一区二区三区成人在线视频| 国产欧美一区二区三区在线看蜜臀| 色婷婷av久久久久久久| 国产成人免费视频网站高清观看视频| 亚洲综合色在线| 亚洲乱码中文字幕综合| 国产亚洲一二三区| 欧美电影免费观看完整版 | 欧美三电影在线| 成人理论电影网| 国产成人精品综合在线观看| 日韩电影在线观看网站| 亚洲曰韩产成在线| 自拍偷拍亚洲欧美日韩| 国产精品久久久久久久午夜片| 久久网这里都是精品| 久久精品一区二区三区四区| 精品日韩成人av| 国产精品免费丝袜| 亚洲精品国产成人久久av盗摄| 亚洲精品中文字幕乱码三区 | 午夜精品影院在线观看| 亚洲gay无套男同| 久久丁香综合五月国产三级网站| 日韩成人精品视频| 久久99这里只有精品| www.欧美色图| 91精品国产91热久久久做人人| 精品国产乱码久久久久久久| 国产日韩欧美高清| 亚洲永久精品大片| 国产精品一区专区| 欧美自拍偷拍一区| 久久精品欧美日韩| 亚洲sss视频在线视频| 国产激情视频一区二区三区欧美| 99re热这里只有精品视频| 欧美美女视频在线观看| 国产精品久久综合| 国产精品一区免费视频| 在线观看区一区二| 久久久不卡网国产精品一区| 亚洲色图一区二区三区| 日韩 欧美一区二区三区| 欧美专区在线观看一区| 中文字幕一区二区三| 国产91丝袜在线播放0| 国产欧美日韩精品a在线观看| 久久色视频免费观看| 亚洲精品国产高清久久伦理二区| 国产一区二区三区观看|