1. 程式人生 > >SQL語法全面接觸第三節

SQL語法全面接觸第三節

指定一特定的分組記錄,並滿足HAVING 所指定的條件或狀態,但條件是針對分組的條件設定。
  
  Select fieldlist
  FROM table
  Where selectcriteria
  GROUP BY groupfieldlist
  HAVING groupcriteria 
  fieldlist
  顯示被查詢的欄位名稱。(可與ALL,DISTINCT,DISTINCTROW,或TOP相結合) 
  table
  欲查詢資料的表格名稱。 
  selectcriteria
  選取標準。 
  groupfieldlist
  分組記錄的欄位名稱,到多10個欄位。而這些欄位的順序決定最高到最低的分組階層。 
  groupcriteria
  決定什麼樣的分組記錄要被顯示。 
  HAVING跟Where 的用法相當類似,不同之處在於HAVING必須用於GROUP之後的分組資料上。
  例如:
  Select 分類編,Sum(庫存數量)
  FROM 產品表格
  GROUP BY 分類編號
  HAVING Sum(庫存數量)>100 AND 產品名稱 LIKE "*紙"; 
  
  GROUP BY 條件子句
  
    依據指定的欄位,將具有相同數值的記錄合併成一條。
  
  Select fieldlist
  FROM table
  Where criteria
  GROUP BY groupfieldlist 
  fieldlist
  欲讀取的欄位名稱。(可與ALL,DISTINCT,DISTINCTROW,或TOP合併使用) 
  table
  被查詢的表格名稱。 
  groupfieldlist
  分組記錄的欄位名稱,到多10個欄位,而這些欄位的順序決定最高到最低的分組層次。
  例如:
  Select 姓名,Count(姓名)AS 職員姓名
  FROM 職員表格
  Where 部門名稱="業務部"
  GROUP BY 姓名 
  
  FROM 條件子句
  
    指定表格名稱或是查詢,其中包含列在Select語句的欄位資料。
  
  Select fieldlist
  FROM tableexpression[IN externaldatabase] 
  fieldlist
  表格中的欄位名稱。(可與ALL,DISTINCT,DISTINCTROW,或TOP相結合) 
  tableexpression
  表格名稱,或多個表格的算式。 
  externaldatabase
  若該表格參考到外部的資料庫時,將其完整的路徑名稱記下。
  例如:
  從職員表格下,查詢出所有姓名欄位的資料(只有姓名欄位被查詢,其他則不顯示)。
  Select 姓名 FROM 職員表格; 
  
    Where 條件子句
  <指定查詢的條件與限制。
  
  Select fieldlist
  FROM tableexpression
  Where criteria 
  fieldlist
  欄位名稱。(可與ALL,DISTINCT,DISTINCTROW,或TOP相結合) 
  tableexpression
  表格名稱,或多個表格的算式。 
  criteria
  查詢的結果,必須依照這一限制標準。
  例如:
  要查詢出職員表格中,所有姓氏是李的資料,可以用下面的語句。
  Select 姓名
  FROM 職員表格
  Where 姓氏="李";
  BETWEEN...AND 運算子
  
    決定某一人數值是否介於特定的範圍之內,此運算子只可以用在SQL的語句中。
  
  expr[Not]BETWEEN value1 AND value2 
  expr
  指定要加以計算的欄位與表示式的組合。 
  value1,value2
  所指明的數值範圍。
  例如:
  若是要從職員表格查詢出所有年齡介於25-30歲的員工,可以利用下面的程式來做。
  Select 姓名,年齡 BETWEEN 25 AND 30
  FROM 職員表格; 
  
    LIKE 運算元
  
    用來將一字串與另一特定字串樣式(pattern)比較,並將符合該字串樣式的記錄過濾出來。
  
  expression LIKE "pattern" 
  expression
  使用在Where條件子句,SQL表示式。 
  pattern
  用以比較的字串樣式。
  例如:
  若是你要查詢出所有以“李”為首的姓氏,可以利用下面的式子。
  Like "李*" 
  LIKE運算元的多種範例: 
  1、多個字元: 
  (1)"a*a"
  可篩選:"aa","aBa","aBBBa",不能篩選:"aBC"
  (2)"*ab*"
  可篩選:"abc","AABB","Xab",不能篩選:"aZb","bac" 
  2、特殊字元:
  "a“*”a"
  可篩選:"a*a",不能篩選:"aaa" 
  3、單一字元:
  "a?a"
  可篩選:"aaa","a3a","aBa",不能篩選:"aBBBa" 
  4、單一數字:
  "a#a"
  可篩選:"a0a","a1a","a2a",不能篩選:"aaa","a10a" 
  5、字元範圍:
  "“a-z”"
  可篩選:"f","p","j",不能篩選:"2","&" 
  6、指定字元以外部範圍:
  "“!a-z”" 
  7、指定非數字:
  "“!0-9”"
  可篩選:"A","a","&","~",不能篩選:"0","1","9" 
  8、組合式結構:
  "a“!b-m”#"
  可篩選:"An9","az0","a99",不能篩選:"abc","aj0" 
  
    SQL數字函式
  
    1、AVG:算數平均數
  AVG(expr) 
    expr
    欄位名稱或表示式。
    例如:
  
    若要計算職員身高超過165釐米的職員平均身高,可以利用下面的SQL語句來完成。
  Select Avg(身高)
  AS 平均身高
  FROM 職員表格 Where 身高>165; 
  
    2、COUNT:計算記錄條數
    COUNT(expr) 
  expr
  欄位名稱或表示式。
    例如:
    若是要統計出業務部門的職員人數,並查詢出職員的姓名,可以利用下面的程式。
    Select Count(姓名) AS 職員姓名
    FROM 職員表格
    Where 部門名稱="業務部"; 
  
    3、FIRST與LAST:返回某欄位的第一條資料與最後一條資料。
    FIRST(expr)
    LAST(expr) 
    expr
    欄位名稱或表示式。
    例如:
    若是要找出貨品數量欄位的第一條資料與貨品價格欄位的最後一條資料時,可以利用下面的查詢方式
    Select FIRST(貨品數量),LAST(貨品價格)
    FROM 訂單表格 
  
    4、MAX,與MIN:返回某欄位的最大值與最小值。
  
    用法同FIRST與LAST。 
    5、SUM:返回某特定欄位或是運算的總和數值。
  
    SUM(expr) 
    expr
    欄位名稱或表示式。
    例如:
    要計算出貨品總價,可使用下面的程式。
    Select
    Sum(單位價格*貨品數量)
    AS 貨品總價 FROM 訂單表格 
    多層SQL查詢
    顧名思義,多層的SQL查詢的便在於:“在一個SQL語句中可以包含另一個SQL查詢語句,形成內部巢狀的查詢型別。”
  comparison[ANY|ALL|SOME](sqlstatement)
  expression[NOT]IN (sqlstatement)
  [NOT]EXISTS(sqlstatement) 
  comparison
  將表示式與內層查詢的結果比較的操作。 
  expression
  對內層查詢的結果作搜尋的表示式。 
  sqlstatement
  為Select語句構成的SQL查詢,必須用()將該語句括起來。
    例如:
    我們先從訂單表格當中,查詢出所有的單位,再將產品表格中的單位與的一一對比,查詢出所有高於訂單表格的單位價格的記錄。
  ELECT * FROM 產品表格
  
    Where 單位價格>ANY (Select 單位價格 FROM 訂單表格 Where 折扣>=.25); 
 

相關推薦

SQL語法全面接觸三節

指定一特定的分組記錄,並滿足HAVING 所指定的條件或狀態,但條件是針對分組的條件設定。    Select fieldlist  FROM table  Where selectcriteria  GROUP BY groupfieldlist  HAVING group

C#語法基礎之三節

blog ons code pre convert 使用 自動類型轉換 自動 double 1、類型轉換:   1-1:對於類型兼容的兩種類型之間進行轉換:       大轉小:強制類型轉換 (int => int(double))       小轉大:自動類型轉換

精華:全面接觸SQL語法

  SQL功能與特性 其實,在前面的文章中,已經提及SQL命令的一些基本功能,然而,通過SQL命令,程式設計師或資料庫管理員(DBA)可以: (一)建立資料庫的表格。(包括設定表格所可以使用之空間) (二)改變資料庫系統環境設定。 (三)針對某個資料庫或表格,授予使用

全面接觸SQL語法

表的刪除    DELETE語句   我們可以利用DELETE語句,將表格中的記錄刪除。(注意:記錄被刪除後,無法再復原,所以條件設定要正確) DELETE[table.*] FROM tableexpression WHERE criteria table 欲刪除記錄的表格

全面接觸SQL語法(5)

BETWEEN...AND 運算子 決定某一人數值是否介於特定的範圍之內,此運算子只可以用在SQL的語句中。 expr[Not]BETWEEN value1 AND value2 expr

全面接觸SQL語法(4)

HAVING 條件子句 指定一特定的分組記錄,並滿足HAVING 所指定的條件或狀態,但條件是針對分組的條件設定。 SELECT fieldlist FROM table WHER

SQL.基礎構建-三節(3/4)】

sql 日期 復數 bsp 由於 min 指定 構建 一行 -- Tips:聚合和排序-- 一、對表進行聚合查詢 --  1.聚合函數--    (1)5 個常用函數:--      ①COUNT:計算表中的記錄(行)數。--      ②SUM:計算表中數

三節、PL/SQL編程

擴展 other 數據庫 -- 邏輯 邏輯判斷 增加 style 數據 1、PL/SQL結合了過程語言和sql查詢語言的擴展語言,就是為sql增加了編程語言的特點,通過邏輯判斷、循環等操作實現復雜功能或計算。 [declare]   --聲明部分:聲明用到的變量、類型、

三節:Python語法基礎

第三節:Python語法基礎 python語法 支援基本數學運算 None(空型別)在賦值運算中a=0.2並不會打印出來,因為返回的是一個空型別。 type()函式檢視型別 容器型別:用[]表示列表,可包含不同型別的資料,type([,])=list。{}表

JavaScript設計模式:一、面向對象編程(三節

設置 style 擁有 ray 進行 如果 eat gree 而在 一、繼承 js並沒有繼承這一個現有的機制,所以我們所說的繼承是通過JS本身的機制去實現的。 1、類式繼承 1 // 類式繼承 2 3 // 父類 4 function SuperClas

淘寶數據庫OceanBase SQL編譯器部分 源代碼閱讀--解析SQL語法

git itemtype 工具 銷毀 cin bsp 年輕 you any OceanBase是阿裏巴巴集團自主研發的可擴展的關系型數據庫,實現了跨行跨表的事務,支持數千億條記錄、數百TB數據上的SQL操作。在阿裏巴巴集團下,OceanBase數據庫支持了多個重

python三節函數,文件操作

python函數 文件處理 文件操作#以讀的方式打開文件# f=open(‘c.txt‘,encoding=‘utf-8‘)# print(f)# data = f.read() #以讀的方式打開# print(data)# print(f.closed) #判斷文件是否是關閉狀態# print(f.

SQL 語法之“增”、“刪”、“改”、“查”

group by num having div 沒有 popu 模糊查詢 上海 條件 /* 四、查 1.普通查詢 語法:select <列名> from <表名> [where <查詢條件表達試>] [order by &

008-Hadoop Hive sql語法詳解3-DML 操作:元數據存儲

pan 查詢 寫入 所有 not insert語句 int 寫入文件 文件系統 一、概述 hive不支持用insert語句一條一條的進行插入操作,也不支持update操作。數據是以load的方式加載到建立好的表中。數據一旦導入就不可以修改。 DML包括:INSERT插入

python學習筆記三節

循環 字典 一個 取出 src 默認 ont fin 數據類型 1 循環while 條件:循環體while True:循環體(死循環) for i in range(1,3):print(i) 遍歷hello for循環遍歷 break 跳出本層循環,本層循環徹底結束c

spark學習(基礎篇)--(三節)Spark幾種運行模式

一些記錄 image ica runner 1.3 函數 ive 啟動 driver h2 { color: #fff; background-color: #7CCD7C; padding: 3px; margin: 10px 0px } h3 { color: #fff

基於mysql的一些sql語法

文本搜索 print use 客戶 .com fault lac images 磁盤 p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px "Helvetica Neue"; color: #454545 } p.p2 {

2014年辛星jquery解讀三節 Ajax

執行 情況 clas mod ajax type name lba html ***************Ajax********************* 1.Ajax是Asynchronous Javascript And XML的簡寫,它指的是異步Jav

【v2.x OGE-example 三節 播放精靈動畫】

一次 src nal rst and 播放 ole nbsp () 1. 位置:Drawing_example --> SpriteAnimated 2. 類名:SpriteAnimated 3.利用AnimatedSprite動畫精靈類

sql語法

sqlSQL 約束 (Constraints)SQL 約束約束用於限制加入表的數據的類型。可以在創建表時規定約束(通過 CREATE TABLE 語句),或者在表創建之後也可以(通過 ALTER TABLE 語句)。我們將主要探討以下幾種約束:NOT NULLUNIQUEPRIMARY KEYFOREIGN