計算機, 程序設計
Select(SQL)語句
SQL縮寫(結構化組織查詢的語言)的翻譯反映了SQL是最常用的元素的事實。 選擇必要的行,自動排除冗餘數據,跳過或重新排序列將幫助選擇(SQL) - 一個告訴DBMS輸出某些信息的操作員。
運算符語法
要正確使用任何操作符,您必須首先熟悉所討論的編程語言的語法。 當我們具體講SQL語言時,Select(操作符)具有以下語法:
選擇 | 告訴我們正在傳輸請求的數據庫。 這是關鍵詞。 |
一,二,三 | 輸出列列表 |
從 | 表示從中選擇數據的表的名稱。 它也是必需的關鍵字。 |
這是運算符的所謂“簡短”語法,但是它向我們指出,沒有選擇關鍵字和DBMS,我們的查詢將不會執行。
操作符的完整語法如下圖所示:
這裡,Where子句允許您通過指定條件來優化搜索。
要對值進行分組並將聚合函數應用於它們,將使用Group by子句,並且在分組後指定結果時,將使用提案Poss。
Order by將允許您按升序或降序對所選列進行排序。
с информацией: 為了更好地了解Select運算符,我們假設在我們的數據庫中有以下的Cats表,其中包含以下信息:
編號 | 品種 | 名 | 生日 | 顏色 |
1 | 短尾 | 主 | 2017年4月1日 | 灰色 |
2 | 捲曲 | 假象 | 2017年3月16日 | 白 |
3 | 茂 | 豹 | 2017年3月30日 | 黑 |
4 | 短尾 | 泰森 | 2017年2月23日 | 灰色 |
五 | 購買burmilla | 雅典娜 | 2017年8月1日 | 黑 |
桌子的每一行都包含小貓的獨特號碼,它的品種,暱稱,出生日期和著色。 接下來,我們將基於此表中的數據來考慮Select(SQL)操作符的工作原理。
如何從表中獲取數據
如上所述,關鍵字始終用於從表中選擇正確的信息。
選擇關鍵字後,輸出的列被指定。 您可以列出由逗號分隔的必需列,則整個結構將如下所示:
選擇顏色,品種,名稱 從貓 |
您可以看到,我們可以按需要排列列。 另外,我們只能顯示我們需要的列。
還有一個簡短的條目查看表的所有列。 為此,選擇後,星號(*)表示空格。 整個設計將如下所示:
選擇* 從貓 |
上述查詢的結果是整個Cats表,表示為最後一部分的末尾。
許多人對如何將執行結果放在SQL Select中的字符串感興趣。 大多數情況下,這是必要的,當需要將姓氏,名字和人名的組合結合在一起時,放在不相交的列中。
在我們的例子中,我們結合了貓的品種和顏色。 細微之處在於不同的DBMS使用不同的字符進行字符串連接。 在某些情況下,這只是一個加號(+),在其他情況下,雙線(||)或和號(&),有時使用Concat操作數。 因此,在合併之前,您需要讀取您正在使用的特定DBMS的註釋。
選擇品種|| ','|| 顏色 從貓 |
結果如下:
品種,顏色 |
鮑勃,格雷 |
捲曲,白色 |
毛,黑 |
鮑勃,格雷 |
布爾米拉,黑色 |
排除冗餘數據
不同的功能選擇(SQL),允許從樣本結果中排除絕對相同行的重複。
例如,我們想知道我們的表中有哪些貓。 如果我們使用一個簡單的查詢:
選擇品種 從貓 |
我們將收到相當預期的結果:
品種 |
短尾 |
捲曲 |
茂 |
短尾 |
購買burmilla |
如你所見,鮑勃品種重複兩次。 參數不同將消除重複,您只需要完成查詢:
選擇不同的品種 從貓 |
細化請求
實際上,幾乎沒有查詢將數據作為一組完整的表行輸出。 讓我們考慮一下,Select(SQL)中的哪個句子允許設置僅選擇必要行的條件。
這是在哪裡 在這句話中,使用謂詞 - 一個條件表達式,給出輸出值“true”或“false”。 Select語句僅從條件表達式為True的表中檢索那些數據,或“true”。
這將有助於整理這個設計一個簡單的樣品。 假設我們想知道有關黑貓的一切。
選擇* 從貓 其中color ='Black' |
此查詢的結果將是表的以下行:
3 | 茂 | 豹 | 2017年3月30日 | 黑 |
五 | 購買burmilla | 雅典娜 | 2017年8月1日 | 黑 |
您也可以使用And或Or,而不是邏輯運算符組合條件。
分組
Select(SQL)中使用的Group by子句允許您通過特定列(或列)的值對查詢進行分組,然後將聚合函數應用於它們。
綜合功能包括:
- 計數 - 計算查詢所選擇的行數。
- Sum是所有列值的算術和。
- 最小 - 打印所選列值的最小值。
- Max是所選列值的最大值。
- 平均值是平均值。
這個提案的方案在一個具體的例子中是最容易理解的。 假設我們想知道每個品種有多少隻小貓。 為此,您需要生成以下簡單查詢:
選擇品種,計數(*) 從貓 按品種分組 |
執行結果如下表所示:
品種 | 算 |
短尾 | 2 |
捲曲 | 1 |
茂 | 1 |
購買burmilla | 1 |
你可以看到,我們有兩隻小貓,其餘的只有一隻。 實際上,根據這個要求,根據我們的表格,育種者可以了解買家中哪些品種的貓需要,哪些不是。
很可能由於真實表中的條目數量龐大,所以仍然需要澄清查詢並僅提取那些不再是例如十的小貓品種。 要優化或過濾組,請使用Having子句。 它允許您刪除某些組,類似於Where子句,它丟棄單個行。 條件由聚合函數給出。 我們將添加查詢:
選擇品種,計數(*) 從貓 按品種分組 計數(*)<= 10 |
由於條件我們設定“每個品種的小貓數不超過10”,結果與沒有規格的例子相同。 但在這裡,了解提案的工作方案很重要。 但是,如果我們將邏輯條件改為將count(*)= 1,那麼結果將減少到三行並輸出小貓品種,只剩下一個。
排序
讓我們熟悉Select(SQL)操作符的順序,它允許您通過增加或減少一個或多個列中的值對輸出行進行排序。
重要的是要記住,Order by是Select語句的整個結構的最後一句。 放在Select,From,Where,Group by,Having之後。
排序時有三點要點:
1)您可以指定任意數量的列,每列都可以單獨排序升序(ASC)或降序(DESC)。
2)Order By子句中的所有指定列必須出現在Select中的所選列之間。
3)沒有必要列出排序的特定列名,您可以簡單地指定他們在Select語句中的數字。
我們希望在本文的幫助下,您已經收到了關於使用SQL查詢的基本知識,現在您可以從DBMS中輕鬆選擇必要的信息。
Similar articles
Trending Now