韩冰 发表于 2004-11-21 11:19

<P>Insert Into
用途:
</P><P>       在表中插入新行</P><P>语法:
</P><P>       插入一行数据</P><P>INSERT INTO table_name
VALUES (value1, value2,....)

       插入一行数据在指定的字段上
</P><P>INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,....)   

例:
</P><P>"Persons"表中的原始数据:
</P><P>LastName

FirstName

Address

City


Pettersen

Kari

Storgt 20

Stavanger

</P><P>运行下面的SQL插入一行数据:</P><P>INSERT INTO Persons  
VALUES ('Hetland', 'Camilla', 'Hagabakka 24', 'Sandnes')

插入后"Persons"表中的数据为:
</P><P>LastName

FirstName

Address

City


Pettersen

Kari

Storgt 20

Stavanger


Hetland

Camilla

Hagabakka 24

Sandnes

</P><P>运行下面的SQL插入一行数据在指定的字段上:</P><P>INSERT INTO Persons (LastName, Address)
VALUES ('Rasmussen', 'Storgt 67')
</P><P>插入后"Persons"表中的数据为:</P><P>LastName

FirstName

Address

City


Pettersen

Kari

Storgt 20

Stavanger


Hetland

Camilla

Hagabakka 24

Sandnes


Rasmussen

   

Storgt 67
</P>

韩冰 发表于 2004-11-21 11:22

<P>Update
用途:
</P><P>       更新表中原有数据</P><P>语法:
</P><P>UPDATE table_name SET column_name = new_value
WHERE column_name = some_value

例:
</P><P>"Person"表中的原始数据:
</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


Rasmussen

   

Storgt 67

   

</P><P>运行下面的SQL将Person表中LastName字段为"Rasmussen"的FirstName更新为"Nina":</P><P>UPDATE Person SET FirstName = 'Nina'
WHERE LastName = 'Rasmussen'

更新后"Person"表中的数据为:
</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


Rasmussen

Nina

Storgt 67

   

</P><P>同样的,用UPDATE语句也可以同时更新多个字段:</P><P>UPDATE Person
SET Address = 'Stien 12', City = 'Stavanger'
WHERE LastName = 'Rasmussen'
</P><P>更新后"Person"表中的数据为:</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


Rasmussen

Nina

Stien 12

Stavanger
</P>

韩冰 发表于 2004-11-21 11:23

<P>Delete
用途:
</P><P>       删除表中的数据</P><P>语法:
</P><P>DELETE FROM table_name WHERE column_name = some_value

例:
</P><P>"Person"表中的原始数据:
</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


Rasmussen

Nina

Stien 12

Stavanger

</P><P>删除Person表中LastName为"Rasmussen"的数据:</P><P>DELETE FROM Person WHERE LastName = 'Rasmussen'

执行删除语句后"Person"表中的数据为:
</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


  
</P><P>  
</P>

韩冰 发表于 2004-11-21 11:24

<P>Delete
用途:
</P><P>       删除表中的数据</P><P>语法:
</P><P>DELETE FROM table_name WHERE column_name = some_value

例:
</P><P>"Person"表中的原始数据:
</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


Rasmussen

Nina

Stien 12

Stavanger

</P><P>删除Person表中LastName为"Rasmussen"的数据:</P><P>DELETE FROM Person WHERE LastName = 'Rasmussen'

执行删除语句后"Person"表中的数据为:
</P><P>LastName

FirstName

Address

City


Nilsen

Fred

Kirkegt 56

Stavanger


  
</P><P>  
</P>

韩冰 发表于 2004-11-21 11:25

<P>Create Table
用途:
</P><P>       建立新的资料表。</P><P>语法:
</P><P>CREATE TABLE table_name
(
column_name1 data_type,
column_name2 data_type,
.......
)

例:
</P><P>创建一张叫"Person"的表,该表有4个字段"LastName", "FirstName", "Address", "Age":
</P><P>CREATE TABLE Person  
(
LastName varchar,
FirstName varchar,
Address varchar,
Age int
)
</P><P>如果想指定字段的最大存储长度,你可以这样:</P><P>CREATE TABLE Person  
(
LastName varchar(30),
FirstName varchar(30),
Address varchar(120),
Age int(3)  
)
</P><P>下表中列出了在SQL的一些数据类型:</P><P>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


  
</P><P>  
</P><P>Alter Table
用途:
</P><P>       在已经存在的表中增加后者移除字段</P><P>语法:
</P><P>ALTER TABLE table_name  
ADD column_name datatype </P>

韩冰 发表于 2004-11-21 11:26

<P>Alter Table
用途:
</P><P>       在已经存在的表中增加后者移除字段</P><P>语法:
</P><P>ALTER TABLE table_name  
ADD column_name datatype
ALTER TABLE table_name  
DROP COLUMN column_name

注意:某些数据库管理系统不允许移除表中的字段
</P><P>  
</P><P>例:
</P><P>"Person"表中的原始数据:
</P><P>LastName

FirstName

Address


Pettersen

Kari

Storgt 20


  
</P><P>在Person表中增加一个名为City的字段:</P><P>ALTER TABLE Person ADD City varchar(30)
</P><P>增加后表中数据如下:</P><P>LastName

FirstName

Address

City


Pettersen

Kari

Storgt 20

   


  
</P><P>移除Person表中原有的Address字段:</P><P>ALTER TABLE Person DROP COLUMN Address
</P><P>移除后表中数据如下:</P><P>LastName

FirstName

City


Pettersen

Kari
</P>

韩冰 发表于 2004-11-21 11:27

<P>Drop Table
用途:
</P><P>       在数据库中移除一个数据表定义及该数据表中的所有资料、索引、触发程序、条件约束及权限指定。</P><P>语法:
</P><P>DROP TABLE table_name

  
</P><P>  
</P><P>Create Database
用途:
</P><P>       建立新的数据库.</P><P>语法:</P><P>CREATE DATABASE database_name

  
</P><P>  
</P><P>Drop Database
用途:
</P><P>       移除原有的数据库</P><P>语法:</P><P>DROP DATABASE database_name

   
聚集函数
count
用途:
</P><P>       传回选取的结果集中行的数目。</P><P>语法:
</P><P>SELECT COUNT(column_name) FROM table_name
</P><P>例:</P><P>"Persons"表中原始数据如下:</P><P>Name

Age


Hansen, Ola

34


Svendson, Tove

45


Pettersen, Kari

19


选取记录总数:
</P><P>SELECT COUNT(Name) FROM Persons
</P><P>执行结果:</P><P>3

  
</P>

韩冰 发表于 2004-11-21 11:28

<P>sum
用途:
</P><P>       以表达式传回所有值的总和,或仅 DISTINCT 值。SUM 仅可用于数值资料行。已忽略 Null 值。
</P><P>语法:
</P><P>SELECT SUM(column_name) FROM table_name
</P><P>例:</P><P>"Persons"表中原始数据如下:</P><P>Name

Age


Hansen, Ola

34


Svendson, Tove

45


Pettersen, Kari

19


选取"Persons"表中所有人的年龄总和:
</P><P>SELECT SUM(Age) FROM Persons
</P><P>执行结果:</P><P>98

选取"Persons"表中年龄超过20岁的人的年龄总和:
</P><P>SELECT SUM(Age) FROM Persons WHERE Age&gt;20
</P><P>执行结果:</P><P>79

  
</P><P>avg
用途:
</P><P>       传回选取的结果集中值的平均值。已忽略 Null 值。
</P><P>语法:
</P><P>SELECT AVG(column_name) FROM table_name
</P><P>例:</P><P>"Persons"表中原始数据如下:</P><P>Name

Age


Hansen, Ola

34


Svendson, Tove

45


Pettersen, Kari

19


选取"Persons"表中所有人的平均年龄:
</P><P>SELECT AVG(Age) FROM Persons
</P><P>执行结果:</P><P>32.67

选取"Persons"表中年龄超过20岁的人的平均年龄:
</P><P>SELECT AVG(Age) FROM Persons WHERE Age&gt;20
</P><P>执行结果:</P><P>39.5

  
</P>

韩冰 发表于 2004-11-21 11:29

<P>max
用途:
</P><P>       传回选取的结果集中值的最大值。已忽略 Null 值。
</P><P>语法:
</P><P>SELECT MAX(column_name) FROM table_name
</P><P>例:</P><P>"Persons"表中原始数据如下:</P><P>Name

Age


Hansen, Ola

34


Svendson, Tove

45


Pettersen, Kari

19


选取"Persons"表中的最大年龄:
</P><P>SELECT MAX(Age) FROM Persons
</P><P>执行结果:</P><P>45

  
</P><P>min
用途:
</P><P>       传回选取的结果集中值的最小值。已忽略 Null 值。
</P><P>语法:
</P><P>SELECT MIN(column_name) FROM table_name
</P><P>例:</P><P>"Persons"表中原始数据如下:</P><P>Name

Age


Hansen, Ola

34


Svendson, Tove

45


Pettersen, Kari

19


选取"Persons"表中的最小年龄:
</P><P>SELECT MIN(Age) FROM Persons
</P><P>执行结果:</P><P>19

  
</P><P>  
</P><P>  
</P>

韩冰 发表于 2004-11-21 11:30

<P>算术函数
abs
用途:
</P><P>       传回指定数值表达式 (Numeric Expression) 的绝对正值。
</P><P>语法:
</P><P>ABS(numeric_expression)

例:
</P><P>ABS(-1.0) ABS(0.0) ABS(1.0)

执行结果:
</P><P>1.0         0.0        1.0

  
</P><P>ceil
用途:
</P><P>       传回大于等于给定数值表达式的最小整数。</P><P>语法:
</P><P>CEIL(numeric_expression)

例:
</P><P>CEIL(123.45)   CEIL(-123.45)

执行结果:
</P><P>124.00            -123.00

  
</P><P>floor
用途:
</P><P>       传回小于或等于给定数值表达式的最大整数。</P><P>语法:
</P><P>FLOOR(numeric_expression)

例:
</P><P>FLOOR(123.45)   FLOOR(-123.45)

执行结果:
</P><P>123.00             -124.00

  
</P><P>cos
用途:
</P><P>       在指定表达式中传回指定角度 (以弪度为单位) 的三角余弦值的数学函数。</P><P>语法:
</P><P>COS(numeric_expression)

例:
</P><P>COS(14.78)

执行结果:
</P><P>-0.599465
</P>
页: 1 [2] 3
查看完整版本: SQL的最完全语法介绍