溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

sql語句都有哪些

發(fā)布時(shí)間:2021-09-28 14:12:13 來源:億速云 閱讀:166 作者:柒染 欄目:MySQL數(shù)據(jù)庫

這篇文章將為大家詳細(xì)講解有關(guān)sql語句都有哪些,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個(gè)參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。

Windows中運(yùn)行cmd的Sqlplus中

  1. 設(shè)置每行顯示的數(shù)據(jù)長度:
    Set linesize 數(shù)字;

  2. 設(shè)置每頁顯示的數(shù)據(jù)行數(shù):
    Set pagesinze 數(shù)字;

  3. oralce中切換用戶:
    conn 用戶名/密碼{as sysdba},當(dāng)使用sys用戶的時(shí)候,必須要加上括號內(nèi)的內(nèi)容。

    查詢語句

    Select 語句。

  4. 查詢一個(gè)用戶下面所有的表信息;
    Select table_name fomr user_tbales;

  5. 通配符查詢:
    *,星號意為所有

  6. 具體列的來查詢數(shù)據(jù)庫表結(jié)構(gòu):
    Select * from 表;
    Select 字段名,字段名…  from 表;
    需要注意的是:
    ①   字母不區(qū)分大小寫
    ②   sql平臺上,所有的語句必須要以分號結(jié)尾
    ③   符號不允許是全角符號,;。

  7. 帶有運(yùn)算符號的查詢語句:
    例如:
    Select gongzi+100,name from 表;
    運(yùn)算符號+-*/

  8. 如何查詢表結(jié)構(gòu):
    Desc 表的名稱;

  9. 帶有列別名的查詢語句;
    Select 字段 as 列別名,…  from 表;

  10. 篩選(條件)查詢:
    Select 查詢內(nèi)容 from 表 where 條件;
    比較運(yùn)算符號:

    <  >=  <=  =  !=
    多個(gè)條件中間用and;or 鏈接。

  11. 其他的比較運(yùn)算:
    ①   Between…and… 在兩個(gè)值之間(包括邊界)
    Select 查詢內(nèi)容 from 表 where 字段名稱 between 值 and 值;
    ②   In(set) 等于值列表之間的一個(gè)

③   Like 模糊查詢
Select 查詢內(nèi)容 from 表 where 字段 like 匹配表達(dá)式;
匹配表達(dá)式:
%代表若干個(gè)字符;
查詢包含A的人的名稱:select name from 表 where name like “%A%”
_:代表一個(gè)字符;
查詢包含A的人的名稱:select name from 表 where name like “_A”;僅限于兩個(gè)字
④   Is null 等于空值

  1. 排序查詢:
    Order by 語句(order by放在select的結(jié)尾使用)

    • Asc(ascend):升序

    • Desc(descend):降序
      Select 查詢內(nèi)容 from 表 order by 字段 asc(desc);

      SQL函數(shù)類型

      1.  單行函數(shù)

      ①操作數(shù)據(jù)對象;接受參數(shù)返回一個(gè)結(jié)果;只對一行進(jìn)行變換;每行返回一個(gè)結(jié)果;
      可以轉(zhuǎn)換數(shù)據(jù)類型;可以嵌套;參數(shù)可以是一列或者是一個(gè)值
      ②單行函數(shù)中常用的函數(shù):字符,數(shù)值,日期,轉(zhuǎn)換,通用;
      ③單行函數(shù):大小寫控制函數(shù)和字符控制函數(shù)
      大小寫控制函數(shù):Lower;upper;initcap
      字符控制函數(shù):concat;substr;length;instr;lpad | rpad;trim;replace
      ④大小寫轉(zhuǎn)化函數(shù):
      Lower:用法lower(待轉(zhuǎn)化的字符串),參數(shù)里面的字符串,轉(zhuǎn)換成小寫的格式。
      Upper:用法upper(待轉(zhuǎn)化的字符串),參數(shù)里面的字符串,轉(zhuǎn)換成大寫的格式。
      Initcap:用法initcap(待轉(zhuǎn)化的字符串),將轉(zhuǎn)換的字符串首字母大寫,而其他字母小寫。
      Select 大小寫函數(shù)(字段) from 表;
      ⑤字符控制函數(shù):
      Concat:用法concat(字符串1,字符串2),將字符串1和字符串2鏈接來獲得一個(gè)新的字符串。只能鏈接兩個(gè)字符串。

2.  數(shù)字函數(shù)

Round(待四舍五入的值,保留小數(shù)點(diǎn)位數(shù))
Select 數(shù)字函數(shù)(56.78,2) from 表;
Trunc(截?cái)啵?br/>Mod(求余)

3.  通用函數(shù)

Nvl函數(shù):

nvl(值1,值2)判斷值1是否為空,如果為空,則返回值2,不為空則返回值1

Nvl2函數(shù):

Nullif函數(shù):

Coalesce函數(shù):

4.  條件表達(dá)式

排序函數(shù)
RANK() OVER([<partition_by_clause>]<order by clause>)

5.  多表查詢

主鍵:oid,唯一能標(biāo)識一行的字段,非空、唯一特點(diǎn)。
外鍵:可以在一張表當(dāng)中通過一個(gè)外鍵定位到另外一張表的主鍵。
即一張表中的外鍵的值,是某張表中的主鍵。
一定要避免笛卡爾集合
笛卡爾集合為:三條數(shù)據(jù)分別對應(yīng)另外表三條數(shù)據(jù),最終為3*3.無對應(yīng)關(guān)系。
利用where條件鏈接兩張表的主外鍵。

6.  等值連接和非等值連接

非等值:兩張表中,查詢介于兩個(gè)值之間的值的等級。
例如select 人名,工資,等級 from 表1,表2 where 表1.工資between 表2.最低值 and最高值

等值:將between換成=則為等值連接。

SQL基礎(chǔ):

1.   distinct

SQL SELECT DISTINCT 語句
在表中,可能會(huì)包含重復(fù)值。關(guān)鍵詞 DISTINCT 用于返回唯一不同的值。
舉例:SELECT DISTINCT Company FROM Orders

2.   Where

WHERE 子句
如需有條件地從表中選取數(shù)據(jù),可將 WHERE 子句添加到 SELECT 語句。

語法
SELECT 列名稱 FROM 表名稱 WHERE 列 運(yùn)算符 值
下面的運(yùn)算符可在 WHERE 子句中使用:
操作符 描述
=   等于
<>  不等于

大于
<   小于
=  大于等于
<=  小于等于
BETWEEN 在某個(gè)范圍內(nèi)
LIKE    搜索某種模式
注釋:在某些版本的 SQL 中,操作符 <> 可以寫為 !=。
SQL 使用單引號來環(huán)繞文本值(大部分?jǐn)?shù)據(jù)庫系統(tǒng)也接受雙引號)。如果是數(shù)值,請不要使用引號。

3.   and和or

AND 和 OR 運(yùn)算符
AND 和 OR 可在 WHERE 子語句中把兩個(gè)或多個(gè)條件結(jié)合起來。
如果第一個(gè)條件和第二個(gè)條件都成立,則 AND 運(yùn)算符顯示一條記錄。
如果第一個(gè)條件和第二個(gè)條件中只要有一個(gè)成立,則 OR 運(yùn)算符顯示一條記錄。

4.   order by

ORDER BY 語句
ORDER BY 語句用于根據(jù)指定的列對結(jié)果集進(jìn)行排序。
ORDER BY 語句默認(rèn)按照升序?qū)τ涗涍M(jìn)行排序。
如果您希望按照降序?qū)τ涗涍M(jìn)行排序,可以使用 DESC 關(guān)鍵字。

5.   insert into

INSERT INTO 語句
INSERT INTO 語句用于向表格中插入新的行。

語法
INSERT INTO 表名稱 VALUES (值1, 值2,....)
我們也可以指定所要插入數(shù)據(jù)的列:
INSERT INTO table_name (列1, 列2,...) VALUES (值1, 值2,....)

6.   Update

Update 語句
Update 語句用于修改表中的數(shù)據(jù)。
語法:
UPDATE 表名稱 SET 列名稱 = 新值 WHERE 列名稱 = 某值

7.   Delete

DELETE 語句
DELETE 語句用于刪除表中的行。

語法
DELETE FROM 表名稱 WHERE 列名稱 = 值

刪除所有行
可以在不刪除表的情況下刪除所有的行。這意味著表的結(jié)構(gòu)、屬性和索引都是完整的:
DELETE FROM table_name

Sql高級

1. Top

TOP 子句
TOP 子句用于規(guī)定要返回的記錄的數(shù)目。
對于擁有數(shù)千條記錄的大型表來說,TOP 子句是非常有用的。
注釋:并非所有的數(shù)據(jù)庫系統(tǒng)都支持 TOP 子句。
SQL Server 的語法:
SELECT TOP number|percent column_name(s)
FROM table_name

SQL Server 的語法:
SELECT TOP number|percent column_name(s)
FROM table_name
MySQL 和 Oracle 中的 SQL SELECT TOP 是等價(jià)的
MySQL 語法
SELECT column_name(s)
FROM table_name
LIMIT number

2. Like

LIKE 操作符
LIKE 操作符用于在 WHERE 子句中搜索列中的指定模式。

SQL LIKE 操作符語法
SELECT column_name(s)
FROM table_name
WHERE column_name LIKE pattern

3. Sql通配符

SQL 通配符
在搜索數(shù)據(jù)庫中的數(shù)據(jù)時(shí),SQL 通配符可以替代一個(gè)或多個(gè)字符。
SQL 通配符必須與 LIKE 運(yùn)算符一起使用。
在 SQL 中,可使用以下通配符:
通配符 描述
%   替代一個(gè)或多個(gè)字符
_   僅替代一個(gè)字符

4. In

IN 操作符
IN 操作符允許我們在 WHERE 子句中規(guī)定多個(gè)值。
SQL IN 語法
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1,value2,...)

5.   Between

BETWEEN 操作符
操作符 BETWEEN ... AND 會(huì)選取介于兩個(gè)值之間的數(shù)據(jù)范圍。這些值可以是數(shù)值、文本或者日期。

SQL BETWEEN 語法
SELECT column_name(s)
FROM table_name
WHERE column_name
BETWEEN value1 AND value2

6.   Alisa即as

6.1SQL Alias
表的 SQL Alias 語法
SELECT column_name(s)
FROM table_name
AS alias_name

列的 SQL Alias 語法
SELECT column_name AS alias_name
FROM table_name

7.  Join

Join 和 Key
有時(shí)為了得到完整的結(jié)果,我們需要從兩個(gè)或更多的表中獲取結(jié)果。我們就需要執(zhí)行 join。
數(shù)據(jù)庫中的表可通過鍵將彼此聯(lián)系起來。主鍵(Primary Key)是一個(gè)列,在這個(gè)列中的每一行的值都是唯一的。在表中,每個(gè)主鍵的值都是唯一的。這樣做的目的是在不重復(fù)每個(gè)表中的所有數(shù)據(jù)的情況下,把表間的數(shù)據(jù)交叉捆綁在一起。

不同的 SQL JOIN
除了我們在上面的例子中使用的 INNER JOIN(內(nèi)連接),我們還可以使用其他幾種連接。
下面列出了您可以使用的 JOIN 類型,以及它們之間的差異。
?   JOIN: 如果表中有至少一個(gè)匹配,則返回行
?   LEFT JOIN: 即使右表中沒有匹配,也從左表返回所有的行
?   RIGHT JOIN: 即使左表中沒有匹配,也從右表返回所有的行
?   FULL JOIN: 只要其中一個(gè)表中存在匹配,就返回行

7.1  Inner join
SQL INNER JOIN 關(guān)鍵字
在表中存在至少一個(gè)匹配時(shí),INNER JOIN 關(guān)鍵字返回行。
INNER JOIN 關(guān)鍵字語法
SELECT column_name(s)
FROM table_name1
INNER JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注釋:INNER JOIN 與 JOIN 是相同的。

7.2  left join
LEFT JOIN 關(guān)鍵字語法
SELECT column_name(s)
FROM table_name1
LEFT JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注釋:在某些數(shù)據(jù)庫中, LEFT JOIN 稱為 LEFT OUTER JOIN。

LEFT JOIN 關(guān)鍵字會(huì)從左表 (Persons) 那里返回所有的行,即使在右表 (Orders) 中沒有匹配的行。

7.3  right join

RIGHT JOIN 關(guān)鍵字會(huì)從右表 (Orders) 那里返回所有的行,即使在左表 (Persons) 中沒有匹配的行。

7.4  full join

FULL JOIN 關(guān)鍵字語法
SELECT column_name(s)
FROM table_name1
FULL JOIN table_name2
ON table_name1.column_name=table_name2.column_name
注釋:在某些數(shù)據(jù)庫中, FULL JOIN 稱為 FULL OUTER JOIN。

FULL JOIN 關(guān)鍵字會(huì)從左表 (Persons) 和右表 (Orders) 那里返回所有的行。如果 "Persons" 中的行在表 "Orders" 中沒有匹配,或者如果 "Orders" 中的行在表 "Persons" 中沒有匹配,這些行同樣會(huì)列出。

8.  union 和 union all 操作符

UNION 操作符用于合并兩個(gè)或多個(gè) SELECT 語句的結(jié)果集。
請注意,UNION 內(nèi)部的 SELECT 語句必須擁有相同數(shù)量的列。列也必須擁有相似的數(shù)據(jù)類型。同時(shí),每條 SELECT 語句中的列的順序必須相同。
8.1  SQL UNION 語法
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
注釋:默認(rèn)地,UNION 操作符選取不同的值。如果允許重復(fù)的值,請使用 UNION ALL。

SQL UNION ALL 語法
SELECT column_name(s) FROM table_name1
UNION ALL
SELECT column_name(s) FROM table_name2
另外,UNION 結(jié)果集中的列名總是等于 UNION 中第一個(gè) SELECT 語句中的列名。

8.3  UNION ALL
UNION ALL 命令和 UNION 命令幾乎是等效的,不過 UNION ALL 命令會(huì)列出所有的值。
SQL Statement 1
UNION ALL
SQL Statement 2
使用 UNION ALL 命令

Sql函數(shù)具體

1.ACG函數(shù)

定義和用法
AVG 函數(shù)返回?cái)?shù)值列的平均值。NULL 值不包括在計(jì)算中。
SQL AVG() 語法
SELECT AVG(column_name) FROM table_name

2.SQL COUNT()

2.1  SQL COUNT(column_name) 語法
COUNT(column_name) 函數(shù)返回指定列的值的數(shù)目(NULL 不計(jì)入):
SELECT COUNT(column_name) FROM table_name
2.2  SQL COUNT() 語法
COUNT(
) 函數(shù)返回表中的記錄數(shù):
SELECT COUNT(*) FROM table_name
2.3  SQL COUNT(DISTINCT column_name) 語法
COUNT(DISTINCT column_name) 函數(shù)返回指定列的不同值的數(shù)目:
SELECT COUNT(DISTINCT column_name) FROM table_name
注釋:COUNT(DISTINCT) 適用于 ORACLE 和 Microsoft SQL Server,但是無法用于 Microsoft Access。

3.SQL 日期

當(dāng)我們處理日期時(shí),最難的任務(wù)恐怕是確保所插入的日期的格式,與數(shù)據(jù)庫中日期列的格式相匹配。
只要數(shù)據(jù)包含的只是日期部分,運(yùn)行查詢就不會(huì)出問題。但是,如果涉及時(shí)間,情況就有點(diǎn)復(fù)雜了。
在討論日期查詢的復(fù)雜性之前,我們先來看看最重要的內(nèi)建日期處理函數(shù)。

3.1MySQL ---Date 函數(shù)

下面的表格列出了 MySQL 中最重要的內(nèi)建日期函數(shù):
函數(shù)  描述
NOW()
返回當(dāng)前的日期和時(shí)間
CURDATE()
返回當(dāng)前的日期
CURTIME()
返回當(dāng)前的時(shí)間
DATE()
提取日期或日期/時(shí)間表達(dá)式的日期部分
EXTRACT()
返回日期/時(shí)間按的單獨(dú)部分
DATE_ADD()
給日期添加指定的時(shí)間間隔
DATE_SUB()
從日期減去指定的時(shí)間間隔
DATEDIFF()
返回兩個(gè)日期之間的天數(shù)
DATE_FORMAT()
用不同的格式顯示日期/時(shí)間

3.2SQL Server--- Date 函數(shù)

下面的表格列出了 SQL Server 中最重要的內(nèi)建日期函數(shù):
函數(shù)  描述
GETDATE()
返回當(dāng)前日期和時(shí)間
DATEPART()
返回日期/時(shí)間的單獨(dú)部分
DATEADD()
在日期中添加或減去指定的時(shí)間間隔
DATEDIFF()
返回兩個(gè)日期之間的時(shí)間
CONVERT()
用不同的格式顯示日期/時(shí)間

3.3SQL Date 數(shù)據(jù)類型

MySQL 使用下列數(shù)據(jù)類型在數(shù)據(jù)庫中存儲(chǔ)日期或日期/時(shí)間值:
?   DATE - 格式 YYYY-MM-DD
?   DATETIME - 格式: YYYY-MM-DD HH:MM:SS
?   TIMESTAMP - 格式: YYYY-MM-DD HH:MM:SS
?   YEAR - 格式 YYYY 或 YY
SQL Server 使用下列數(shù)據(jù)類型在數(shù)據(jù)庫中存儲(chǔ)日期或日期/時(shí)間值:
?   DATE - 格式 YYYY-MM-DD
?   DATETIME - 格式: YYYY-MM-DD HH:MM:SS
?   SMALLDATETIME - 格式: YYYY-MM-DD HH:MM:SS
?   TIMESTAMP - 格式: 唯一的數(shù)字

4.SQL CREATE VIEW 語句

4.1什么是視圖?

在 SQL 中,視圖是基于 SQL 語句的結(jié)果集的可視化的表。
視圖包含行和列,就像一個(gè)真實(shí)的表。視圖中的字段就是來自一個(gè)或多個(gè)數(shù)據(jù)庫中的真實(shí)的表中的字段。我們可以向視圖添加 SQL 函數(shù)、WHERE 以及 JOIN 語句,我們也可以提交數(shù)據(jù),就像這些來自于某個(gè)單一的表。
注釋:數(shù)據(jù)庫的設(shè)計(jì)和結(jié)構(gòu)不會(huì)受到視圖中的函數(shù)、where 或 join 語句的影響。

4.2SQL CREATE VIEW 語法

CREATE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
注釋:視圖總是顯示最近的數(shù)據(jù)。每當(dāng)用戶查詢視圖時(shí),數(shù)據(jù)庫引擎通過使用 SQL 語句來重建數(shù)據(jù)。

4.3SQL 更新視圖

可以使用下面的語法來更新視圖:
SQL CREATE OR REPLACE VIEW Syntax
CREATE OR REPLACE VIEW view_name AS
SELECT column_name(s)
FROM table_name
WHERE condition
現(xiàn)在,我們希望向 "Current Product List" 視圖添加 "Category" 列。我們將通過下列 SQL 更新視圖:
CREATE VIEW [Current Product List] AS
SELECT ProductID,ProductName,Category
FROM Products
WHERE Discontinued=No

4.4SQL 撤銷視圖

可以通過 DROP VIEW 命令來刪除視圖。
SQL DROP VIEW Syntax
DROP VIEW view_name

5.SQL NULL 值

如果表中的某個(gè)列是可選的,那么我們可以在不向該列添加值的情況下插入新記錄或更新已有的記錄。這意味著該字段將以 NULL 值保存。
NULL 值的處理方式與其他值不同。
NULL 用作未知的或不適用的值的占位符。
注釋:無法比較 NULL 和 0;它們是不等價(jià)的。

5.1SQL-- IS NULL

我們?nèi)绾蝺H僅選取在 "Address" 列中帶有 NULL 值的記錄呢?
我們必須使用 IS NULL 操作符:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NULL
結(jié)果集:
LastName    FirstName   Address
Adams   John    
Carter  Thomas  
提示:請始終使用 IS NULL 來查找 NULL 值。

5.2SQL-- IS NOT NULL

我們?nèi)绾芜x取在 "Address" 列中不帶有 NULL 值的記錄呢?
我們必須使用 IS NOT NULL 操作符:
SELECT LastName,FirstName,Address FROM Persons
WHERE Address IS NOT NULL
結(jié)果集:
LastName    FirstName   Address
Bush    George  Fifth Avenue

6.SQL 擁有很多可用于計(jì)數(shù)和計(jì)算的內(nèi)建函數(shù)。

6.1函數(shù)的語法

內(nèi)建 SQL 函數(shù)的語法是:
SELECT function(列) FROM 表

6.2函數(shù)的類型

在 SQL 中,基本的函數(shù)類型和種類有若干種。函數(shù)的基本類型是:
?   Aggregate 函數(shù)
?   Scalar 函數(shù)

6.3合計(jì)函數(shù)(Aggregate functions)

Aggregate 函數(shù)的操作面向一系列的值,并返回一個(gè)單一的值。
注釋:如果在 SELECT 語句的項(xiàng)目列表中的眾多其它表達(dá)式中使用 SELECT 語句,則這個(gè) SELECT 必須使用 GROUP BY 語句!

MS Access 中的合計(jì)函數(shù)

函數(shù)  描述
AVG(column)
返回某列的平均值
COUNT(column)
返回某列的行數(shù)(不包括 NULL 值)
COUNT(*)
返回被選行數(shù)
FIRST(column)   返回在指定的域中第一個(gè)記錄的值
LAST(column)    返回在指定的域中最后一個(gè)記錄的值
MAX(column)
返回某列的最高值
MIN(column)
返回某列的最低值
STDEV(column)    
STDEVP(column)  
SUM(column)
返回某列的總和
VAR(column)  
VARP(column)

在 SQL Server 中的合計(jì)函數(shù)

函數(shù)  描述
AVG(column)
返回某列的平均值
BINARY_CHECKSUM  
CHECKSUM    
CHECKSUM_AGG    
COUNT(column)
返回某列的行數(shù)(不包括NULL值)
COUNT(*)
返回被選行數(shù)
COUNT(DISTINCT column)
返回相異結(jié)果的數(shù)目
FIRST(column)
返回在指定的域中第一個(gè)記錄的值(SQLServer2000 不支持)
LAST(column)
返回在指定的域中最后一個(gè)記錄的值(SQLServer2000 不支持)
MAX(column)
返回某列的最高值
MIN(column)
返回某列的最低值
STDEV(column)    
STDEVP(column)  
SUM(column)
返回某列的總和
VAR(column)  
VARP(column)

6.4Scalar 函數(shù)

Scalar 函數(shù)的操作面向某個(gè)單一的值,并返回基于輸入值的一個(gè)單一的值。
MS Access 中的 Scalar 函數(shù)
函數(shù)  描述
UCASE(c)    將某個(gè)域轉(zhuǎn)換為大寫
LCASE(c)    將某個(gè)域轉(zhuǎn)換為小寫
MID(c,start[,end])  從某個(gè)文本域提取字符
LEN(c)  返回某個(gè)文本域的長度
INSTR(c,char)   返回在某個(gè)文本域中指定字符的數(shù)值位置
LEFT(c,number_of_char)  返回某個(gè)被請求的文本域的左側(cè)部分
RIGHT(c,number_of_char) 返回某個(gè)被請求的文本域的右側(cè)部分
ROUND(c,decimals)   對某個(gè)數(shù)值域進(jìn)行指定小數(shù)位數(shù)的四舍五入
MOD(x,y)    返回除法操作的余數(shù)
NOW()   返回當(dāng)前的系統(tǒng)日期
FORMAT(c,format)    改變某個(gè)域的顯示方式
DATEDIFF(d,date1,date2) 用于執(zhí)行日期計(jì)算

7.    SQL AVG() 語法(平均值)

SELECT AVG(column_name) FROM table_name

8.    SQL COUNT() 函數(shù)

SQL avg()
SQL first()
COUNT() 函數(shù)返回匹配指定條件的行數(shù)。
SQL COUNT() 語法

SQL COUNT(column_name) 語法
COUNT(column_name) 函數(shù)返回指定列的值的數(shù)目(NULL 不計(jì)入):
SELECT COUNT(column_name) FROM table_name

8.1 SQL COUNT(*) 語法

COUNT() 函數(shù)返回表中的記錄數(shù):
SELECT COUNT(
) FROM table_name

8.2 SQL COUNT(DISTINCT column_name) 語法

COUNT(DISTINCT column_name) 函數(shù)返回指定列的不同值的數(shù)目:
SELECT COUNT(DISTINCT column_name) FROM table_name
注釋:COUNT(DISTINCT) 適用于 ORACLE 和 Microsoft SQL Server,但是無法用于 Microsoft Access。

9.    SQL FIRST() 函數(shù)

?   SQL count()
?   SQL last()

9.1  FIRST() 函數(shù)

FIRST() 函數(shù)返回指定的字段中第一個(gè)記錄的值。
提示:可使用 ORDER BY 語句對記錄進(jìn)行排序。

9.2  SQL FIRST() 語法

SELECT FIRST(column_name) FROM table_name

10.   SQL LAST() 函數(shù)

SQL first()
SQL max()

10.1 LAST() 函數(shù)

LAST() 函數(shù)返回指定的字段中最后一個(gè)記錄的值。
提示:可使用 ORDER BY 語句對記錄進(jìn)行排序。

10.2 SQL LAST() 語法

SELECT LAST(column_name) FROM table_name

11.   SQL MAX() 函數(shù)

?   SQL last()
?   SQL min()

11.2 MAX() 函數(shù)

MAX 函數(shù)返回一列中的最大值。NULL 值不包括在計(jì)算中。

11.2 SQL MAX() 語法

SELECT MAX(column_name) FROM table_name
注釋:MIN 和 MAX 也可用于文本列,以獲得按字母順序排列的最高或最低值。

12.   SQL MIN() 函數(shù)

?   SQL max()
?   SQL sum()

12.1 MIN() 函數(shù)

MIN 函數(shù)返回一列中的最小值。NULL 值不包括在計(jì)算中。

12.2 SQL MIN() 語法

SELECT MIN(column_name) FROM table_name
注釋:MIN 和 MAX 也可用于文本列,以獲得按字母順序排列的最高或最低值。

13.   SQL SUM() 函數(shù)

?   SQL min()
?   SQL Group By

13.1 SUM() 函數(shù)

SUM 函數(shù)返回?cái)?shù)值列的總數(shù)(總額)。

13.2 SQL SUM() 語法

SELECT SUM(column_name) FROM table_name

14.   SQL GROUP BY 語句

?   SQL sum()
?   SQL Having
合計(jì)函數(shù) (比如 SUM) 常常需要添加 GROUP BY 語句。

14.1 GROUP BY 語句

GROUP BY 語句用于結(jié)合合計(jì)函數(shù),根據(jù)一個(gè)或多個(gè)列對結(jié)果集進(jìn)行分組。

14.2 SQL GROUP BY 語法

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name

15.   SQL HAVING 子句

?   SQL Group By
?   SQL ucase()

15.1 HAVING 子句

在 SQL 中增加 HAVING 子句原因是,WHERE 關(guān)鍵字無法與合計(jì)函數(shù)一起使用。

15.2 SQL HAVING 語法

SELECT column_name, aggregate_function(column_name)
FROM table_name
WHERE column_name operator value
GROUP BY column_name
HAVING aggregate_function(column_name) operator value

16.   SQL UCASE() 函數(shù)

?   SQL Having
?   SQL lcase()

16.1 UCASE() 函數(shù)

UCASE 函數(shù)把字段的值轉(zhuǎn)換為大寫。

16.2 SQL UCASE() 語法

SELECT UCASE(column_name) FROM table_name

17.   SQL LCASE() 函數(shù)

?   SQL ucase()
?   SQL mid()

17.1 LCASE() 函數(shù)

LCASE 函數(shù)把字段的值轉(zhuǎn)換為小寫。

17.2 SQL LCASE() 語法

SELECT LCASE(column_name) FROM table_name

18.2 SQL MID() 語法

SELECT MID(column_name,start[,length]) FROM table_name
參數(shù)  描述
column_name 必需。要提取字符的字段。
start   必需。規(guī)定開始位置(起始值是 1)。
length  可選。要返回的字符數(shù)。如果省略,則 MID() 函數(shù)返回剩余文本。

19.   SQL LEN() 函數(shù)

?   SQL mid()
?   SQL round()

19.1 LEN() 函數(shù)

LEN 函數(shù)返回文本字段中值的長度。

19.2 SQL LEN() 語法

SELECT LEN(column_name) FROM table_name

20.   SQL ROUND() 函數(shù)

?   SQL len()
?   SQL now()

20.1 ROUND() 函數(shù)

ROUND 函數(shù)用于把數(shù)值字段舍入為指定的小數(shù)位數(shù)。

20.2 SQL ROUND() 語法

SELECT ROUND(column_name,decimals) FROM table_name
參數(shù)  描述
column_name 必需。要舍入的字段。
decimals    必需。規(guī)定要返回的小數(shù)位數(shù)。

21.   SQL NOW() 函數(shù)

?   SQL round()
?   SQL format()

21.1 NOW() 函數(shù)

NOW 函數(shù)返回當(dāng)前的日期和時(shí)間。
提示:如果您在使用 Sql Server 數(shù)據(jù)庫,請使用 getdate() 函數(shù)來獲得當(dāng)前的日期時(shí)間。

21.2 SQL NOW() 語法

SELECT NOW() FROM table_name

22.   SQL FORMAT() 函數(shù)

?   SQL now()
?   SQL 快速參考

22.1 FORMAT() 函數(shù)

FORMAT 函數(shù)用于對字段的顯示進(jìn)行格式化。

22.2 SQL FORMAT() 語法

SELECT FORMAT(column_name,format) FROM table_name
參數(shù)  描述
column_name 必需。要格式化的字段。
format  必需。規(guī)定格式。

23.ROWNUM和CONNECT by

(Rownum-1) 取在數(shù)據(jù)結(jié)果中上一個(gè)數(shù)值,connect by

-(rownum-1)取在數(shù)據(jù)結(jié)果中下一個(gè)數(shù)值

24.   Sqlserver中轉(zhuǎn)換字段類型

Convert(varchar,字段,111或其他)

關(guān)于sql語句都有哪些就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

sql
AI