麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 數據庫 > 文庫 > 正文

SQL語言的數據查詢功能

2024-09-07 22:12:22
字體:
來源:轉載
供稿:網友

SQL語言中最主要、最核心的部分是它的查詢功能。查詢語言用來對已經存在于數據庫中的數據按照特定的組合、條件表達式或次序進行檢索,其基本格式是由SELECT子句、FROM子句和WHERE子句組成的查詢塊:

SELECT<列名表> FROM<表或視圖名> WHERE<查詢限定條件>

也就是說,SELECT指定了想要看哪些列數據,FROM指定這些數據來自哪些表或視圖,WHERE指定了想看哪些行。在SQL語言中除了查詢以外,許多其他功能也都離不開SELECT語句,如創建視圖,實際上是利用查詢語句來實現的;又如插入數據時,有很多時候是從另外一張或多張表中選擇符合條件的數據。所以,掌握查詢語句是掌握SQL語言的關鍵。

以下是SQL Server中的SELECT語句的完整用法。

SELECT select_list [INTO new_table_] FROM table_source [WHERE search_condition] [GROUP BY group_by_expression] [HAVING search_condition] [ORDER BY order_expression [ASC | DESC]]

下面簡單介紹一下常用的SQL查詢語法。

(1)檢索表中所有列,這是最簡單的一種方法,其格式為:

SELECT * FROM TABLE_NAME

(2)檢索表中特定列,其格式為:

SELECT COLUMN_NAME FROM TABLE_NAME

在查找多列內容時,用‘,’將各字段分開。

(3)用單引號加入字符串,其格式為:

SELECT COLUMN_NAME 'STRING LITERAL' FROM TABLE_NAME

(4)改變列標題。在默認情況下,顯示的查詢結果中的列標題是列名,但用戶可以改變列標題。共有以下兩種方法:

方法1 采用“列標題=列名”的格式

SELECT COLUMN_HEADING=COLUMN_NAME FROM TABLE_NAME

方法2 采用“列名列標題”的格式

SELECT COLUMN_NAME COLUMN_HEADING FROM TABLE_NAME

(5)算術運算符。在列出現的位置上,可以使用算術運算符操縱列,對查詢的結果進行計算。這些算術運算符包括:+(加)、-(減)、*(乘)、/(除)和%(取模)。其格式為:

{CONSTANT | COLUMN_NAME | FUNCTION |(SUBQUERY)} [{ARITHMETIC_OPERAOR | BITWISE_OPERATOR | STRING_OPERATOR} …]

(6)基于比較的選擇行,其格式為:

SELECT SELECT_LIST FROM TALBE_LIST WHERE EXPRESSION COMPARISION_OPERATOR EXPRESSION

(7)基于范圍的選擇行,其格式為:

SELECT SELECT_LIST FROM TABLE_LIST WHERE EXPRESSION [NOT] BETWEEN EXPRESSION AND EXPRESSION

(8)基于列表的選擇行,其格式為:

SELECT SELECT_LIST FROM TABLE_LIST WHERE [NOT] EXPRESSION [NOT] IN( VALUE_LIST)

(9)基于字符選擇行。查找中,有時需要對字符串進行比較。使用LIKE運算符可以完成對字符串的模糊匹配。其格式為:

SELECT SELECT_LIST FROM TABLE_LIST WHERE EXPRESSION [NOT] LIKE 'STRING'

(10)基于多個搜索條件選擇行。在WHERE子句中,也可以使用“邏輯運算符”連接多個條件,構成一個更復雜的條件進行查詢。可以使用以下3種邏輯運算符:AND(邏輯與)、OR(邏輯或)、NOT(邏輯非)。具體格式如下:

SELECT SELECT_LIST FROM TABLE_LIST WHERE [NOT] EXPRESSION {AND/OR} [NOT] EXPRESSION

(11)消除重復行。可以用DISTINCT消除重復行,其格式為:

SELECT [ALL | DISTINCT] SELECT_LIST FROM TABLE_NAME WHERE SEARCH_CONDITIONS

(12)結果排序。通常用戶對查詢出來的數據,希望按照某種順序顯示,以便查找。通過ORDER BY子句可以改變查詢結果的顯示順序。ORDER BY子句的格式為:

SELECT COLUMN_NAME FROM TABLE_NAME [ORDER BY COLUMN_NAME | SELECT_LIST _NUMBER | EXPRESSION [ASC | DESC]

(13)分組查詢。就是將表中數據按照一定條件分類組合,再根據需要得到統計信息。其格式為:

SELECT COLUMN_NAME FROM TABLE_NAME WHERE SEARCH_CONDITION [GROUP BY [ALL] AGGREGAT E_FREE_EXPRESSION]

(14)COMPUTE和COMPUTE BY。可以通過COMPUTE和COMPUTE BY計算出匯總數據。語法為:

COMPUTE ROW_AGGREGATE (COLUMN_NAME)

(15)連接查詢。在數據庫應用中,經常要涉及從兩個或更多的表中查詢數據,這就需要使用連接查詢。其格式如下:

SELECT COLUMN_NAME FROM TABLE_NAME WHERE TABLE_NAME.COLUMN JOIN_ OPERATOR TABLE_NAME.COLUMN

上述的連接操作符(JOIN_OPERATOR)可以是:=、>、<、>=、<=、! =、< >、! >、! <、= *、* =。在ANSI中,“=”連接應該寫成Inner Join;“* =”連接應該寫成LEFT OUT JOIN;“= *”連接應該寫成“RIGHT OUT JOIN”。在SQL Server中,這些寫法都可以用。但是,ANSI規定的寫法是INNER JOIN等標志。一般而言,在任何連接中,都使用“主鍵=外鍵”的連接查詢條件。

(16)執行子查詢。子查詢是指一條SELECT語句作為另一條SELECT語句的一部分。外層的SELECT語句稱為外部查詢,內層的SELECT語句稱為內部查詢(或子查詢)。子查詢分成兩種:嵌套查詢和相關子查詢。子查詢能夠將比較復雜的查詢分解為幾個簡單的查詢。雖然使用子查詢可以產生在表之間使用連接操作符相同的結果,但是,其操作運行速度較連接操作慢。

嵌套查詢的流程是:首先執行內部查詢,查詢出來的數據并不顯示出來,而是傳遞給外層語句,作為該語句的查詢條件來使用。子查詢可以多層次嵌套。

例如查詢每個書名、ID號及擁有該書的最高百分比版權的作者ID,格式為:

SELECT TITLE_ID, AU_ID, ROYALTYPER FROM TITLEAUTHORTA WHERE ROYALTYPER = (SELECT MAX (ROYALTYPER) FROM TITLEAUTHOR WHERE TITLE_ID =TA.TITLE_ID)

(17)查詢的基礎上創建新表。SELECT INTO的作用是在查詢的基礎上創建新表。若建永久表,必須設置“SELECT INTO / BULKCOPY”;若建臨時表,必須在表前設置#(局部臨時表)或##(全局臨時表)。新表的行和列來自查詢結果。例如創建#PHONYTABLE臨時表,該表的數據由每個書名的前40個字符及月平均銷售量組成,格式為:

SELECT TITLE = SUBSTRING (TITLE, 1, 40), MONTHLY = YTD_SALES/12 INTO #PHONYTABLE FROM TITLES

(18)合并數據集。合并數據集(UNION)的作用是,把結果組合成一個結果集來操作兩個或更多的查詢結構。例如:

SELECT 'ANSI', CONVERT (varchar (30), GETDATE (), 102) AS style UNION SELECT 'Japanese', CONVERT (varchar (30), GETDATE (), 111) UNION SELECT 'Europen', CONVERT (varchar (30), GETDATE (), 113)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 午夜热门福利 | 色七七久久影院 | 97久久日一线二线三线 | 国产午夜精品久久久久婷 | 日韩视频一区二区在线观看 | 日韩精品中文字幕在线观看 | 日韩在线欧美在线 | 91福利国产在线观一区二区 | 中国毛片在线观看 | 777sesese| 欧美一区二区三区不卡免费观看 | 九九热精品在线视频 | 337p日本欧洲亚洲大胆精蜜臀 | 一级毛片免费观看在线 | 天天操天天碰 | 亚洲综合视频网站 | 日本精品久久久久 | 日韩黄色精品视频 | 亚洲网视频 | 精品国产一区二区三区免费 | 成人激情视频网站 | 91午夜在线观看 | 91精品国产综合久久婷婷香蕉 | 日本高清com | 伊人久操视频 | 欧美日韩亚洲成人 | 国产精品久久久久久一区二区三区 | japan护士性xxxⅹhd | 亚洲第九十九页 | av在线直播观看 | 日韩视频一 | 亚洲成人在线视频网站 | 91久久精品国产亚洲 | 久久国产精品电影 | h视频在线免费观看 | 国产一级小视频 | 欧美一级片在线 | 香蕉国产在线视频 | 欧美一级电影网站 | 国产一级免费在线视频 | 久久精品视频3 |