Select
用途:
從指定表中取出指定的列的數據
語法:
SELECT column_name(s) FROM table_name
解釋:
從數據庫中選取資料列,並允許從一或多個資料表中,選取一或多個資料列或資料行。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 ] ]
從數據庫中選取資料列,並允許從一或多個資料表中,選取一或多個資料列或資料行。SELECT 陳述式的完整語法相當複雜,但主要子句可摘要爲:
SELECT select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expr
[ HAVING search_condition ]
[ ORDER BY order_expr
選出字段名” LastName”、” FirstName” 的數據
SELECT LastName,FirstName FROM Persons
SELECT LastName,FirstName FROM Persons
SELECT * FROM Persons
Where
用途:
被用來規定一種選擇查詢的標準
語法:
SELECT column FROM table WHERE column condition value
用途:
被用來規定一種選擇查詢的標準
語法:
SELECT column FROM table WHERE column condition value
下面的操作符能被使用在WHERE中:
=,<>,>,<,>=,<=,BETWEEN,LIKE
注意: 在某些SQL的版本中不等號< >能被寫作爲!=
解釋:
SELECT語句返回WHERE子句中條件爲true的數據
例:
從” Persons”表中選出生活在” Sandnes” 的人
SELECT * FROM Persons WHERE City='Sandnes'
=,<>,>,<,>=,<=,BETWEEN,LIKE
注意: 在某些SQL的版本中不等號< >能被寫作爲!=
解釋:
SELECT語句返回WHERE子句中條件爲true的數據
例:
從” Persons”表中選出生活在” Sandnes” 的人
SELECT * FROM Persons WHERE City='Sandnes'
And & Or
用途:
在WHERE子句中AND和OR被用來連接兩個或者更多的條件
解釋:
AND在結合兩個布爾表達式時,只有在兩個表達式都爲 TRUE 時才傳回 TRUE
OR在結合兩個布爾表達式時,只要其中一個條件爲 TRUE 時,OR便傳回 TRUE
用途:
在WHERE子句中AND和OR被用來連接兩個或者更多的條件
解釋:
AND在結合兩個布爾表達式時,只有在兩個表達式都爲 TRUE 時才傳回 TRUE
OR在結合兩個布爾表達式時,只要其中一個條件爲 TRUE 時,OR便傳回 TRUE
用AND運算子來查找Persons 表中FirstName爲”Tove”而且LastName爲” Svendson”的數據
SELECT * FROM Persons
WHERE FirstName='Tove'
AND LastName='Svendson'
SELECT * FROM Persons
WHERE FirstName='Tove'
AND LastName='Svendson'
用OR運算子來查找Persons 表中FirstName爲”Tove”或者LastName爲” Svendson”的數據
SELECT * FROM Persons
WHERE firstname='Tove'
OR lastname='Svendson'
SELECT * FROM Persons
WHERE firstname='Tove'
OR lastname='Svendson'
你也能結合AND和OR (使用括號形成複雜的表達式),如:
SELECT * FROM Persons WHERE
(FirstName='Tove' OR FirstName='Stephen')
AND LastName='Svendson'
SELECT * FROM Persons WHERE
(FirstName='Tove' OR FirstName='Stephen')
AND LastName='Svendson'
Between…And
用途:
指定需返回數據的範圍
語法:
SELECT column_name FROM table_name
WHERE column_name
BETWEEN &#118;alue1 AND &#118;alue2
用途:
指定需返回數據的範圍
語法:
SELECT column_name FROM table_name
WHERE column_name
BETWEEN &#118;alue1 AND &#118;alue2
用BETWEEN…AND返回LastName爲從”Hansen”到”Pettersen”的數據:
SELECT * FROM Persons WHERE LastName
BETWEEN 'Hansen' AND 'Pettersen'
SELECT * FROM Persons WHERE LastName
BETWEEN 'Hansen' AND 'Pettersen'
爲了顯示指定範圍之外的數據,也可以用NOT操作符:
SELECT * FROM Persons WHERE LastName
NOT BETWEEN 'Hansen' AND 'Pettersen'
SELECT * FROM Persons WHERE LastName
NOT BETWEEN 'Hansen' AND 'Pettersen'
Distinct
用途:
DISTINCT關鍵字被用作返回唯一的值
語法:
SELECT DISTINCT column-name(s) FROM table-name
用途:
DISTINCT關鍵字被用作返回唯一的值
語法:
SELECT DISTINCT column-name(s) FROM table-name
解釋:
當column-name(s)中存在重複的值時,返回結果僅留下一個
用DISTINCT關鍵字返回Company字段中唯一的值:
SELECT DISTINCT Company FROM Orders
當column-name(s)中存在重複的值時,返回結果僅留下一個
用DISTINCT關鍵字返回Company字段中唯一的值:
SELECT DISTINCT Company FROM Orders
Order by
用途:
指定結果集的排序
語法:
SELECT column-name(s) FROM table-name ORDER BY { order_by_expression
[ ASC | DESC ] }
用途:
指定結果集的排序
語法:
SELECT column-name(s) FROM table-name ORDER BY { order_by_expr
[ ASC | DESC ] }
解釋:
指定結果集的排序,可以按照ASC(遞增方式排序,從最低值到最高值)或者DESC(遞減方式排序,從最高值到最低值)的方式進行排序,默認的方式是ASC
按照Company字段的升序方式返回結果集:
SELECT Company, OrderNumber FROM Orders
ORDER BY Company
指定結果集的排序,可以按照ASC(遞增方式排序,從最低值到最高值)或者DESC(遞減方式排序,從最高值到最低值)的方式進行排序,默認的方式是ASC
按照Company字段的升序方式返回結果集:
SELECT Company, OrderNumber FROM Orders
ORDER BY Company
按照Company字段的降序方式返回結果集:
SELECT Company, OrderNumber FROM Orders
ORDER BY Company DESC
SELECT Company, OrderNumber FROM Orders
ORDER BY Company DESC
Group by
用途:
對結果集進行分組,常與彙總函數一起使用。
語法:
SELECT column,SUM(column) FROM table GROUP BY column
用途:
對結果集進行分組,常與彙總函數一起使用。
語法:
SELECT column,SUM(column) FROM table GROUP BY column
按照Company字段進行分組,求出每個Company的Amout的合計:
SELECT Company,SUM(Amount) FROM Sales
GROUP BY Company
SELECT Company,SUM(Amount) FROM Sales
GROUP BY Company
Having
用途:
指定羣組或彙總的搜尋條件。
語法:
SELECT column,SUM(column) FROM table
GROUP BY column
HAVING SUM(column) condition &#118;alue
用途:
指定羣組或彙總的搜尋條件。
語法:
SELECT column,SUM(column) FROM table
GROUP BY column
HAVING SUM(column) condition &#118;alue
解釋:
HAVING 通常與 GROUP BY 子句同時使用。不使用 GROUP BY 時,HAVING 則與 WHERE 子句功能相似。
按照Company字段進行分組,求出每個Company的Amout的合計在10000以上的數據:
SELECT Company,SUM(Amount) FROM Sales
GROUP BY Company HAVING SUM(Amount)>10000
HAVING 通常與 GROUP BY 子句同時使用。不使用 GROUP BY 時,HAVING 則與 WHERE 子句功能相似。
按照Company字段進行分組,求出每個Company的Amout的合計在10000以上的數據:
SELECT Company,SUM(Amount) FROM Sales
GROUP BY Company HAVING SUM(Amount)>10000
Join
用途:
當你要從兩個或者以上的表中選取結果集時,你就會用到JOIN。
用途:
當你要從兩個或者以上的表中選取結果集時,你就會用到JOIN。
Chair
用Employees的ID和Orders的ID相關聯選取數據:
SELECT Employees.Name, Orders.Product
FROM Employees, Orders
WHERE Employees.ID = Orders.ID
SELECT Employees.Name, Orders.Product
FROM Employees, Orders
WHERE Employees.ID = Orders.ID
或者你也可以用JOIN關鍵字來完成上面的操作:
SELECT Employees.Name, Orders.Product
FROM Employees
INNER JOIN Orders
ON Employees.ID = Orders.ID
SELECT Employees.Name, Orders.Product
FROM Employees
INNER JOIN Orders
ON Employees.ID = Orders.ID
INNER JOIN的語法:
SELECT field1, field2, field3
FROM first_table
INNER JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield
SELECT field1, field2, field3
FROM first_table
INNER JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield
解釋:
INNER JOIN返回的結果集是兩個表中所有相匹配的數據。
INNER JOIN返回的結果集是兩個表中所有相匹配的數據。
LEFT JOIN的語法:
SELECT field1, field2, field3
FROM first_table
LEFT JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield
SELECT field1, field2, field3
FROM first_table
LEFT JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield
用”Employees”表去左外聯結”Orders”表去找出相關數據:
SELECT Employees.Name, Orders.Product
FROM Employees
LEFT JOIN Orders
ON Employees.ID = Orders.ID
SELECT Employees.Name, Orders.Product
FROM Employees
LEFT JOIN Orders
ON Employees.ID = Orders.ID
返回結果:
Name
Product
Hansen, Ola
Printer
Svendson, Tove
Name
Product
Hansen, Ola
Printer
Svendson, Tove
Svendson, Stephen
Table
Svendson, Stephen
Chair
Pettersen, Kari
Table
Svendson, Stephen
Chair
Pettersen, Kari
解釋:
LEFT JOIN返回”first_table”中所有的行儘管在” second_table”中沒有相匹配的數據。
LEFT JOIN返回”first_table”中所有的行儘管在” second_table”中沒有相匹配的數據。
RIGHT JOIN的語法:
SELECT field1, field2, field3
FROM first_table
RIGHT JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield
SELECT field1, field2, field3
FROM first_table
RIGHT JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield
用”Employees”表去右外聯結”Orders”表去找出相關數據:
SELECT Employees.Name, Orders.Product
FROM Employees
RIGHT JOIN Orders
ON Employees.ID = Orders.ID
SELECT Employees.Name, Orders.Product
FROM Employees
RIGHT JOIN Orders
ON Employees.ID = Orders.ID
返回結果:
Name
Product
Hansen, Ola
Printer
Svendson, Stephen
Table
Svendson, Stephen
Chair
Name
Product
Hansen, Ola
Printer
Svendson, Stephen
Table
Svendson, Stephen
Chair
解釋:
RIGHT JOIN返回” second_table”中所有的行儘管在”first_table”中沒有相匹配的數據。
RIGHT JOIN返回” second_table”中所有的行儘管在”first_table”中沒有相匹配的數據。
Alias
用途:
可用在表、結果集或者列上,爲它們取一個邏輯名稱
語法:
給列取別名:
SELECT column AS column_alias FROM table
用途:
可用在表、結果集或者列上,爲它們取一個邏輯名稱
語法:
給列取別名:
SELECT column AS column_alias FROM table
給表取別名:
SELECT column FROM table AS table_alias
SELECT column FROM table AS table_alias
例:
“Persons”表中的原始數據:
LastName
FirstName
Address
City
Hansen
Ola
Timoteivn 10
Sandnes
Svendson
Tove
Borgvn 23
Sandnes
Pettersen
Kari
Storgt 20
Stavanger
“Persons”表中的原始數據:
LastName
FirstName
Address
City
Hansen
Ola
Timoteivn 10
Sandnes
Svendson
Tove
Borgvn 23
Sandnes
Pettersen
Kari
Storgt 20
Stavanger
運行下面的SQL:
SELECT LastName AS Family, FirstName AS Name
FROM Persons
SELECT LastName AS Family, FirstName AS Name
FROM Persons
返回結果:
Family
Name
Hansen
Ola
Svendson
Tove
Pettersen
Kari
Family
Name
Hansen
Ola
Svendson
Tove
Pettersen
Kari
運行下面的SQL:
SELECT LastName, FirstName
FROM Persons AS Employees
SELECT LastName, FirstName
FROM Persons AS Employees
返回結果:
Employees中的數據有:
LastName
FirstName
Hansen
Ola
Svendson
Tove
Pettersen
Kari
Employees中的數據有:
LastName
FirstName
Hansen
Ola
Svendson
Tove
Pettersen
Kari
Insert Into
用途:
在表中插入新行
語法:
插入一行數據
INSERT INTO table_name
&#118;alueS (&#118;alue1, &#118;alue2,....)
用途:
在表中插入新行
語法:
插入一行數據
INSERT INTO table_name
&#118;alueS (&#118;alue1, &#118;alue2,....)
插入一行數據在指定的字段上
INSERT INTO table_name (column1, column2,...)
&#118;alueS (&#118;alue1, &#118;alue2,....)
INSERT INTO table_name (column1, column2,...)
&#118;alueS (&#118;alue1, &#118;alue2,....)
例:
“Persons”表中的原始數據:
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
Stavanger
“Persons”表中的原始數據:
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
Stavanger
運行下面的SQL插入一行數據:
INSERT INTO Persons
&#118;alueS ('Hetland', 'Camilla', 'Hagabakka 24', 'Sandnes')
INSERT INTO Persons
&#118;alueS ('Hetland', 'Camilla', 'Hagabakka 24', 'Sandnes')
插入後”Persons”表中的數據爲:
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
Stavanger
Hetland
Camilla
Hagabakka 24
Sandnes
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
Stavanger
Hetland
Camilla
Hagabakka 24
Sandnes
運行下面的SQL插入一行數據在指定的字段上:
INSERT INTO Persons (LastName, Address)
&#118;alueS ('Rasmussen', 'Storgt 67')
INSERT INTO Persons (LastName, Address)
&#118;alueS ('Rasmussen', 'Storgt 67')
插入後”Persons”表中的數據爲:
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
Stavanger
Hetland
Camilla
Hagabakka 24
Sandnes
Rasmussen
Storgt 67
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
Stavanger
Hetland
Camilla
Hagabakka 24
Sandnes
Rasmussen
Storgt 67
Update
用途:
更新表中原有數據
語法:
UPDATE table_name SET column_name = new_&#118;alue
WHERE column_name = some_&#118;alue
用途:
更新表中原有數據
語法:
UPDATE table_name SET column_name = new_&#118;alue
WHERE column_name = some_&#118;alue
例:
“Person”表中的原始數據:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Storgt 67
“Person”表中的原始數據:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Storgt 67
運行下面的SQL將Person表中LastName字段爲”Rasmussen”的FirstName更新爲”Nina”:
UPDATE Person SET FirstName = 'Nina'
WHERE LastName = 'Rasmussen'
UPDATE Person SET FirstName = 'Nina'
WHERE LastName = 'Rasmussen'
更新後”Person”表中的數據爲:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Nina
Storgt 67
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Nina
Storgt 67
同樣的,用UPDATE語句也可以同時更新多個字段:
UPDATE Person
SET Address = 'Stien 12', City = 'Stavanger'
WHERE LastName = 'Rasmussen'
UPDATE Person
SET Address = 'Stien 12', City = 'Stavanger'
WHERE LastName = 'Rasmussen'
更新後”Person”表中的數據爲:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Nina
Stien 12
Stavanger
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Nina
Stien 12
Stavanger
Delete
用途:
刪除表中的數據
語法:
DELETE FROM table_name WHERE column_name = some_&#118;alue
用途:
刪除表中的數據
語法:
DELETE FROM table_name WHERE column_name = some_&#118;alue
例:
“Person”表中的原始數據:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Nina
Stien 12
Stavanger
“Person”表中的原始數據:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Rasmussen
Nina
Stien 12
Stavanger
刪除Person表中LastName爲”Rasmussen”的數據:
DELETE FROM Person WHERE LastName = 'Rasmussen'
DELETE FROM Person WHERE LastName = 'Rasmussen'
執行刪除語句後”Person”表中的數據爲:
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
LastName
FirstName
Address
City
Nilsen
Fred
Kirkegt 56
Stavanger
Create Table
用途:
建立新的資料表。
語法:
CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
.......
)
用途:
建立新的資料表。
語法:
CREATE TABLE table_name
(
column_name1 da
column_name2 da
.......
)
例:
創建一張叫“Person”的表,該表有4個字段LastName, FirstName, Address, Age:
CREATE TABLE Person
(
LastName varchar,
FirstName varchar,
Address varchar,
Age int
)
創建一張叫“Person”的表,該表有4個字段LastName, FirstName, Address, Age:
CREATE TABLE Person
(
LastName varchar,
FirstName varchar,
Address varchar,
Age int
)
如果想指定字段的最大存儲長度,你可以這樣:
CREATE TABLE Person
(
LastName varchar(30),
FirstName varchar(30),
Address varchar(120),
Age int(3)
)
CREATE TABLE Person
(
LastName varchar(30),
FirstName varchar(30),
Address varchar(120),
Age int(3)
)
下表中列出了在SQL的一些數據類型:
Data Type
Description
integer(size)
int(size)
smallint(size)
tinyint(size)
Hold integers only. The maximum number of digits are specified in
parenthesis.
decimal(size,d)
numeric(size,d)
Hold numbers with fractions. The maximum number of digits are
specified in size. The maximum number of digits to the right of the
decimal is specified in d.
char(size)
Holds a fixed length string (can contain letters, numbers, and
special characters). The fixed size is specified in parenthesis.
varchar(size)
Holds a variable length string (can contain letters, numbers, and
special characters). The maximum size is specified in parenthesis.
date(yyyymmdd)
Holds a date
Da
Description
integer(size)
int(size)
smallint(size)
tinyint(size)
Hold integers on
parenthesis.
decimal(size,d)
numeric(size,d)
Hold numbers with fractions. The maximum number of digits are
specified in size. The maximum number of digits to the right of the
decimal is specified in d.
char(size)
Holds a fixed length string (can contain letters, numbers, and
special characters). The fixed size is specified in parenthesis.
varchar(size)
Holds a variable length string (can contain letters, numbers, and
special characters). The maximum size is specified in parenthesis.
date(yyyymmdd)
Holds a date
Alter Table
用途:
在已經存在的表中增加後者移除字段
語法:
ALTER TABLE table_name
ADD column_name datatype
ALTER TABLE table_name
DROP COLUMN column_name
用途:
在已經存在的表中增加後者移除字段
語法:
ALTER TABLE table_name
ADD column_name datatype
ALTER TABLE table_name
DROP COLUMN column_name
注意:某些數據庫管理系統不允許移除表中的字段
例:
“Person”表中的原始數據:
LastName
FirstName
Address
Pettersen
Kari
Storgt 20
“Person”表中的原始數據:
LastName
FirstName
Address
Pettersen
Kari
Storgt 20
在Person表中增加一個名爲City的字段:
ALTER TABLE Person ADD City varchar(30)
ALTER TABLE Person ADD City varchar(30)
增加後表中數據如下:
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
LastName
FirstName
Address
City
Pettersen
Kari
Storgt 20
移除Person表中原有的Address字段:
ALTER TABLE Person DROP COLUMN Address
ALTER TABLE Person DROP COLUMN Address
移除後表中數據如下:
LastName
FirstName
City
Pettersen
Kari
LastName
FirstName
City
Pettersen
Kari
Drop Table
用途:
在數據庫中移除一個數據表定義及該數據表中的所有資料、索引、觸發程序、條件約束及權限指定。
語法:
DROP TABLE table_name
用途:
在數據庫中移除一個數據表定義及該數據表中的所有資料、索引、觸發程序、條件約束及權限指定。
語法:
DROP TABLE table_name
Create Database
用途:
建立新的數據庫.
語法:
CREATE DATABASE database_name
用途:
建立新的數據庫.
語法:
CREATE DATABASE database_name
Drop Database
用途:
移除原有的數據庫
語法:
DROP DATABASE database_name
用途:
移除原有的數據庫
語法:
DROP DATABASE database_name
聚集函數
count
用途:
傳回選取的結果集中行的數目。
語法:
SELECT COUNT(column_name) FROM table_name
count
用途:
傳回選取的結果集中行的數目。
語法:
SELECT COUNT(column_name) FROM table_name
例:
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
選取記錄總數:
SELECT COUNT(Name) FROM Persons
SELECT COUNT(Name) FROM Persons
執行結果:
3
3
sum
用途:
以表達式傳回所有值的總和,或僅 DISTINCT 值。SUM 僅可用於數值資料行。已忽略 Null 值。
語法:
SELECT SUM(column_name) FROM table_name
用途:
以表達式傳回所有值的總和,或僅 DISTINCT 值。SUM 僅可用於數值資料行。已忽略 Null 值。
語法:
SELECT SUM(column_name) FROM table_name
例:
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
選取”Persons”表中所有人的年齡總和:
SELECT SUM(Age) FROM Persons
SELECT SUM(Age) FROM Persons
執行結果:
98
98
選取”Persons”表中年齡超過20歲的人的年齡總和:
SELECT SUM(Age) FROM Persons WHERE Age>20
SELECT SUM(Age) FROM Persons WHERE Age>20
執行結果:
79
79
avg
用途:
傳回選取的結果集中值的平均值。已忽略 Null 值。
語法:
SELECT AVG(column_name) FROM table_name
用途:
傳回選取的結果集中值的平均值。已忽略 Null 值。
語法:
SELECT AVG(column_name) FROM table_name
例:
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
選取”Persons”表中所有人的平均年齡:
SELECT AVG(Age) FROM Persons
SELECT AVG(Age) FROM Persons
執行結果:
32.67
32.67
選取”Persons”表中年齡超過20歲的人的平均年齡:
SELECT AVG(Age) FROM Persons WHERE Age>20
SELECT AVG(Age) FROM Persons WHERE Age>20
執行結果:
39.5
39.5
max
用途:
傳回選取的結果集中值的最大值。已忽略 Null 值。
語法:
SELECT MAX(column_name) FROM table_name
用途:
傳回選取的結果集中值的最大值。已忽略 Null 值。
語法:
SELECT MAX(column_name) FROM table_name
例:
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
選取”Persons”表中的最大年齡:
SELECT MAX(Age) FROM Persons
SELECT MAX(Age) FROM Persons
執行結果:
45
45
min
用途:
傳回選取的結果集中值的最小值。已忽略 Null 值。
語法:
SELECT MIN(column_name) FROM table_name
用途:
傳回選取的結果集中值的最小值。已忽略 Null 值。
語法:
SELECT MIN(column_name) FROM table_name
例:
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
“Persons”表中原始數據如下:
Name
Age
Hansen, Ola
34
Svendson, Tove
45
Pettersen, Kari
19
選取”Persons”表中的最小年齡:
SELECT MIN(Age) FROM Persons
SELECT MIN(Age) FROM Persons
執行結果:
19
19
算術函數
abs
用途:
傳回指定數值表達式 (Numeric Expression) 的絕對正值。
語法:
ABS(numeric_expression)
abs
用途:
傳回指定數值表達式 (Numeric Expr
語法:
ABS(numeric_expr
例:
ABS(-1.0) ABS(0.0) ABS(1.0)
ABS(-1.0) ABS(0.0) ABS(1.0)
執行結果:
1.0 0.0 1.0
1.0 0.0 1.0
ceil
用途:
傳回大於等於給定數值表達式的最小整數。
語法:
CEIL(numeric_expression)
用途:
傳回大於等於給定數值表達式的最小整數。
語法:
CEIL(numeric_expr
例:
CEIL(123.45) CEIL(-123.45)
CEIL(123.45) CEIL(-123.45)
執行結果:
124.00 -123.00
124.00 -123.00
floor
用途:
傳回小於或等於給定數值表達式的最大整數。
語法:
FLOOR(numeric_expression)
用途:
傳回小於或等於給定數值表達式的最大整數。
語法:
FLOOR(numeric_expr
例:
FLOOR(123.45) FLOOR(-123.45)
FLOOR(123.45) FLOOR(-123.45)
執行結果:
123.00 -124.00
123.00 -124.00
cos
用途:
在指定表達式中傳回指定角度 (以弳度爲單位) 的三角餘弦值的數學函數。
語法:
COS(numeric_expression)
用途:
在指定表達式中傳回指定角度 (以弳度爲單位) 的三角餘弦值的數學函數。
語法:
COS(numeric_expr
例:
COS(14.7
COS(14.7
執行結果:
-0.599465
-0.599465
cosh
用途:
傳回以弧度爲單位的角度值,其餘弦爲指定的 float 表達式,也稱爲反餘弦。
語法:
COSH(numeric_expression)
用途:
傳回以弧度爲單位的角度值,其餘弦爲指定的 float 表達式,也稱爲反餘弦。
語法:
COSH(numeric_expr
例:
COSH(-1)
COSH(-1)
執行結果:
3.14159
3.14159
sin
用途:
以近似的數值 (float) 表達式傳回給定角度 (以弧度) 之三角正弦函數 (Trigonometric Sine)。
語法:
SIN(numeric_expression)
用途:
以近似的數值 (float) 表達式傳回給定角度 (以弧度) 之三角正弦函數 (Trigonometric Sine)。
語法:
SIN(numeric_expr
例:
SIN(45.175643)
SIN(45.175643)
執行結果:
0.929607
0.929607
sinh
用途:
傳回以弳度爲單位的角度,其正弦爲指定的 float 表達式 (也稱爲反正弦)。
語法:
SINH(numeric_expression)
用途:
傳回以弳度爲單位的角度,其正弦爲指定的 float 表達式 (也稱爲反正弦)。
語法:
SINH(numeric_expr
例:
SINH(-1.00)
SINH(-1.00)
執行結果:
-1.5708
-1.5708
tan
用途:
傳回輸入表達式的正切函數。
語法:
TAN(numeric_expression)
用途:
傳回輸入表達式的正切函數。
語法:
TAN(numeric_expr
例:
TAN(3.14159265358979/2)
TAN(3.14159265358979/2)
執行結果:
1.6331778728383844E+16
1.6331778728383844E+16
tanh
用途:
傳回以弳度爲單位的角度,其正切爲指定的 float 表達式 (也稱爲反正切)。
語法:
TANH(numeric_expression)
用途:
傳回以弳度爲單位的角度,其正切爲指定的 float 表達式 (也稱爲反正切)。
語法:
TANH(numeric_expr
例:
TANH(-45.01)
TANH(-45.01)
執行結果:
-1.54858
-1.54858
exp
用途:
傳回給定的 float 表達式的指數 (Exponential) 值。
語法:
EXP(numeric_expression)
用途:
傳回給定的 float 表達式的指數 (Exponential) 值。
語法:
EXP(numeric_expr
例:
EXP(378.615345498)
EXP(378.615345498)
執行結果:
2.69498e+164
2.69498e+164
log
用途:
傳回給定的 float 表達式之自然對數。
語法:
LOG(numeric_expression)
用途:
傳回給定的 float 表達式之自然對數。
語法:
LOG(numeric_expr
例:
LOG(5.175643)
LOG(5.175643)
執行結果:
1.64396
1.64396
power
用途:
傳回給定表達式指定乘冪的值。
語法:
POWER(numeric_expression,v)
用途:
傳回給定表達式指定乘冪的值。
語法:
POWER(numeric_expr
例:
POWER(2,6)
POWER(2,6)
執行結果:
64
64
sign
用途:
傳回給定的表達式之正 (+1)、零 (0) 或負 (-1) 號。
語法:
SIGN(numeric_expression)
用途:
傳回給定的表達式之正 (+1)、零 (0) 或負 (-1) 號。
語法:
SIGN(numeric_expr
例:
SIGN(123) SIGN(0) SIGN(-456)
SIGN(123) SIGN(0) SIGN(-456)
執行結果:
1 0 -1
1 0 -1
sqrt
用途:
傳回給定表達式的平方。
語法:
SQRT(numeric_expression)
用途:
傳回給定表達式的平方。
語法:
SQRT(numeric_expr
例:
SQRT(10)
SQRT(10)
執行結果:
100
100