sql 常用语法(love)

来源:互联网 发布:maya2016汉化补丁 mac 编辑:程序博客网 时间:2024/06/03 05:40

Select

用途:

 从指定表中取出指定的列的数据

语法:

SELECT column_name(s) FROM table_name

解释:

从数据库中选取资料列,并允许从一或多个资料表中,选取一或多个资料列或资料行。SELECT 陈述式的完整语法相当复杂,但主要子句可摘要为:

SELECTselect_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ]

Where

用途:

被用来规定一种选择查询的标准

语法:

SELECT column FROM table WHERE column condition value

下面的操作符能被使用在WHERE中:

=,<>,>,<,>=,<=,BETWEEN,LIKE

注意:在某些SQL的版本中不等号< >能被写作为!=

解释:

  SELECT语句返回WHERE子句中条件为true的数据

And& Or

用途:

在WHERE子句中AND和OR被用来连接两个或者更多的条件

解释:

AND在结合两个布尔表达式时,只有在两个表达式都为 TRUE 时才传回 TRUE

  OR在结合两个布尔表达式时,只要其中一个条件为 TRUE 时,OR便传回 TRUE

你也能结合AND和OR (使用括号形成复杂的表达式),如:

SELECT * FROM Persons WHERE
(FirstName='Tove' OR FirstName='Stephen')
AND LastName='Svendson'

Between…And

用途:

 指定需返回数据的范围

语法:

SELECT column_name FROM table_name
WHERE column_name
BETWEEN value1AND value2

为了显示指定范围之外的数据,也可以用NOT操作符:

Distinct

用途:

 DISTINCT关键字被用作返回唯一的值

语法:

SELECT DISTINCT column-name(s) FROM table-name

解释:

 当column-name(s)中存在重复的值时,返回结果仅留下一个

Order by

用途:

指定结果集的排序

语法:

SELECT column-name(s) FROM table-name ORDER BY { order_by_expression [ ASC | DESC ] }

解释:

 指定结果集的排序,可以按照ASC(递增方式排序,从最低值到最高值)或者DESC(递减方式排序,从最高值到最低值)的方式进行排序,默认的方式是ASC

Group by

用途:

对结果集进行分组,常与汇总函数一起使用。

语法:

SELECT column,SUM(column) FROM table GROUP BY column

Having

用途:

指定群组或汇总的搜寻条件。

语法:

SELECT column,SUM(column) FROM table
GROUP BY column
HAVING SUM(column) condition value

解释:

HAVING 通常与 GROUP BY 子句同时使用。不使用 GROUP BY 时,HAVING 则与 WHERE 子句功能相似。

Join

用途:

当你要从两个或者以上的表中选取结果集时,你就会用到JOIN。

INNER JOIN的语法:

SELECT field1, field2, field3
FROM first_table
INNER JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield

解释:

       INNER JOIN返回的结果集是两个表中所有相匹配的数据。

 

LEFT JOIN的语法:

SELECT field1, field2, field3
FROM first_table
LEFT JOIN second_table
ON first_table.keyfield = second_table.foreign_keyfield

解释:

       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

解释:

       RIGHT JOIN返回”second_table”中所有的行尽管在”first_table”中没有相匹配的数据。

 

Alias

用途:

可用在表、结果集或者列上,为它们取一个逻辑名称

语法:

给列取别名:

SELECT column AS column_alias FROM table

       给表取别名:

SELECT column FROM table AS table_alias

InsertInto

用途:

       在表中插入新行

语法:

       插入一行数据

INSERT INTO table_name
VALUES (value1, value2,....)

       插入一行数据在指定的字段上

INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,....)   

Update

用途:

       更新表中原有数据

语法:

UPDATE table_nameSET column_name = new_value
WHERE column_name = some_value

Delete

用途:

       删除表中的数据

语法:

DELETE FROM table_nameWHERE column_name = some_value

CreateTable

用途:

       建立新的资料表。

语法:

CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
.......
)

下表中列出了在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

AlterTable

用途:

       在已经存在的表中增加后者移除字段

语法:

ALTER TABLE table_name 
ADD column_name datatype
ALTER TABLE table_name 
DROP COLUMN column_name

注意:某些数据库管理系统不允许移除表中的字段

DropTable

用途:

       在数据库中移除一个数据表定义及该数据表中的所有资料、索引、触发程序、条件约束及权限指定。

语法:

DROP TABLE table_name

 

CreateDatabase

用途:

       建立新的数据库.

语法:

CREATE DATABASE database_name

 

DropDatabase

用途:

       移除原有的数据库

语法:

DROP DATABASE database_name

聚集函数

count

用途:

       传回选取的结果集中行的数目。

语法:

SELECT COUNT(column_name) FROM table_name

sum

用途:

       以表达式传回所有值的总和,或仅 DISTINCT 值。SUM 仅可用于数值资料行。已忽略Null 值。

语法:

SELECT SUM(column_name) FROM table_name

avg

用途:

       传回选取的结果集中值的平均值。已忽略 Null 值。

语法:

SELECT AVG(column_name) FROM table_name

max

用途:

       传回选取的结果集中值的最大值。已忽略Null 值。

语法:

SELECT MAX(column_name) FROM table_name

min

用途:

       传回选取的结果集中值的最小值。已忽略Null 值。

语法:

SELECT MIN(column_name) FROM table_name

算术函数