关于作者

用户名:zgmchina
笔名:zgmchina
地区:
行业:其他

日历  

快速登录

+ 用户名:
+ 密 码:

在线留言



我的BLOG

最新评论

访问统计:
文章个数:6
评论个数:0
留言条数:1




Powered by BlogDriver 2.1

虫子的博客

 

欢迎访问虫子的博客

文章

已锁定
摘要:需求理解 查看全文

- 作者: zgmchina 2006年08月29日, 星期二 18:04  回复(0) |  引用(0) 加入博采

SQL语法手册(一)A

 SQL语法手册

 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 ] ]

例:

 “Persons” 表中的数据有

LastName

FirstName

Address

City

Hansen

Ola

Timoteivn 10

Sandnes

Svendson

Tove

Borgvn 23

Sandnes

Pettersen

Kari

Storgt 20

Stavanger

选出字段名 LastName FirstName的数据

SELECT LastName,FirstName FROM Persons

返回结果:

LastName

FirstName

Hansen

Ola

Svendson

Tove

Pettersen

Kari

选出所有字段的数据

SELECT * FROM Persons

返回结果:

LastName

FirstName

Address

City

Hansen

Ola

Timoteivn 10

Sandnes

Svendson

Tove

Borgvn 23

Sandnes

Pettersen

Kari

Storgt 20

Stavanger

Where

用途:

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

语法:

SELECT column FROM table WHERE column condition value

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

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

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

解释:

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

例:

” Persons”表中选出生活在” Sandnes” 的人

SELECT * FROM Persons WHERE City='Sandnes'

 "Persons" 表中的数据有:

LastName

FirstName

Address

City

Year

Hansen

Ola

Timoteivn 10

Sandnes

1951

Svendson

Tove

Borgvn 23

Sandnes

1978

Svendson

Stale

Kaivn 18

Sandnes

1980

Pettersen

Kari

Storgt 20

Stavanger

1960

返回结果:

LastName

FirstName

Address

City

Year

Hansen

Ola

Timoteivn 10

Sandnes

1951

Svendson

Tove

Borgvn 23

Sandnes

1978

Svendson

Stale

Kaivn 18

Sandnes

1980

And & Or

用途:

WHERE子句中ANDOR被用来连接两个或者更多的条件

解释:

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

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

例:

  "Persons" 表中的原始数据:

  AND运算子来查找"Persons" 表中FirstName”Tove”而且LastName” Svendson”的数据

SELECT * FROM Persons

WHERE FirstName='Tove'

AND LastName='Svendson'

返回结果:

LastName

FirstName

Address

City

Svendson

Tove

Borgvn 23

Sandnes

OR运算子来查找"Persons" 表中FirstName”Tove”或者LastName” Svendson”的数据

SELECT * FROM Persons

WHERE firstname='Tove'

OR lastname='Svendson'

返回结果:

LastName

FirstName

Address

City

Svendson

Tove

Borgvn 23

Sandnes

Svendson

Stephen

Kaivn 18

Sandnes

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

SELECT * FROM Persons WHERE

(FirstName='Tove' OR FirstName='Stephen')

AND LastName='Svendson'

返回结果:

LastName

FirstName

Address

City

Svendson

Tove

Borgvn 23

Sandnes

Svendson

Stephen

Kaivn 18

Sandnes

Between…And

用途:

 指定需返回数据的范围

语法:

SELECT column_name FROM table_name

WHERE column_name

BETWEEN value1 AND value2

例:

“Persons”表中的原始数据

LastName

FirstName

Address

City

Hansen

Ola

Timoteivn 10

Sandnes

Nordmann

Anna

Neset 18

Sandnes

Pettersen

Kari

Storgt 20

Stavanger

Svendson

Tove

Borgvn 23

Sandnes

BETWEEN…AND返回LastName为从”Hansen””Pettersen”的数据:

SELECT * FROM Persons WHERE LastName 

BETWEEN 'Hansen' AND 'Pettersen'

返回结果:

LastName

FirstName

Address

City

Hansen

Ola

Timoteivn 10

Sandnes

Nordmann

Anna

Neset 18

Sandnes

Pettersen

Kari

Storgt 20

Stavanger

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

SELECT * FROM Persons WHERE LastName 

NOT BETWEEN 'Hansen' AND 'Pettersen'

返回结果:

LastName

FirstName

Address

City

Svendson

Tove

Borgvn 23

Sandnes

- 作者: zgmchina 2005年08月19日, 星期五 08:47  回复(0) |  引用(0) 加入博采

SQL语法手册(二)

聚集函数

count

用途:

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

语法:

SELECT COUNT(column_name) FROM table_name

例:

“Persons”表中原始数据如下:

Name

Age

Hansen, Ola

34

Svendson, Tove

45

Pettersen, Kari

19

选取记录总数:

SELECT COUNT(Name) FROM Persons

执行结果:

3

sum

用途:

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

语法:

SELECT SUM(column_name) FROM table_name

例:

“Persons”表中原始数据如下:

Name

Age

Hansen, Ola

34

Svendson, Tove

45

Pettersen, Kari

19

选取”Persons”表中所有人的年龄总和:

SELECT SUM(Age) FROM Persons

执行结果:

98

选取”Persons”表中年龄超过20岁的人的年龄总和:

SELECT SUM(Age) FROM Persons WHERE Age>20

执行结果:

79

avg

用途:

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

语法:

SELECT AVG(column_name) FROM table_name

例:

“Persons”表中原始数据如下:

Name

Age

Hansen, Ola

34

Svendson, Tove

45

Pettersen, Kari

19

选取”Persons”表中所有人的平均年龄:

SELECT AVG(Age) FROM Persons

执行结果:

32.67

选取”Persons”表中年龄超过20岁的人的平均年龄:

SELECT AVG(Age) FROM Persons WHERE Age>20

执行结果:

39.5

max

用途:

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

语法:

SELECT MAX(column_name) FROM table_name

例:

“Persons”表中原始数据如下:

Name

Age

Hansen, Ola

34

Svendson, Tove

45

Pettersen, Kari

19

选取”Persons”表中的最大年龄:

SELECT MAX(Age) FROM Persons

执行结果:

45

min

用途:

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

语法:

SELECT MIN(column_name) FROM table_name

例:

“Persons”表中原始数据如下:

Name

Age

Hansen, Ola

34

Svendson, Tove

45

Pettersen, Kari

19

选取”Persons”表中的最小年龄:

SELECT MIN(Age) FROM Persons

执行结果:

19

算术函数

abs

用途:

       传回指定数值表达式 (Numeric Expression) 的绝对正值。

语法:

ABS(numeric_expression)

例:

ABS(-1.0) ABS(0.0) ABS(1.0)

执行结果:

1.0         0.0        1.0

ceil

用途:

       传回大于等于给定数值表达式的最小整数。

语法:

CEIL(numeric_expression)

例:

CEIL(123.45)   CEIL(-123.45)

执行结果:

124.00            -123.00

floor

用途:

       传回小于或等于给定数值表达式的最大整数。

语法:

FLOOR(numeric_expression)

例:

FLOOR(123.45)   FLOOR(-123.45)

执行结果:

123.00             -124.00

cos

用途:

       在指定表达式中传回指定角度 (以弪度为单位) 的三角余弦值的数学函数。

语法:

COS(numeric_expression)

例:

COS(14.78)

执行结果:

-0.599465

cosh

用途:

       传回以弧度为单位的角度值,其余弦为指定的 float 表达式,也称为反余弦。

语法:

COSH(numeric_expression)

例:

COSH(-1)

执行结果:

3.14159

sin

用途:

       以近似的数值 (float) 表达式传回给定角度 (以弧度) 之三角正弦函数 (Trigonometric Sine)。

语法:

SIN(numeric_expression)

例:

SIN(45.175643)

执行结果:

0.929607

sinh

用途:

       传回以弪度为单位的角度,其正弦为指定的 float 表达式 (也称为反正弦)。

语法:

SINH(numeric_expression)

例:

SINH(-1.00)

执行结果:

-1.5708

tan

用途:

       传回输入表达式的正切函数。

语法:

TAN(numeric_expression)

例:

TAN(3.14159265358979/2)

执行结果:

1.6331778728383844E+16

tanh

用途:

       传回以弪度为单位的角度,其正切为指定的 float 表达式 (也称为反正切)

语法:

TANH(numeric_expression)

例:

TANH(-45.01)

执行结果:

-1.54858

exp

用途:

       传回给定的 float 表达式的指数 (Exponential) 值。

语法:

EXP(numeric_expression)

例:

EXP(378.615345498)

执行结果:

2.69498e+164 

log

用途:

       传回给定的 float 表达式之自然对数。

语法:

LOG(numeric_expression)

例:

LOG(5.175643)

执行结果:

1.64396 

power

用途:

       传回给定表达式指定乘幂的值。

语法:

POWER(numeric_expression,v)

例:

POWER(2,6)

执行结果:

64

sign

用途:

       传回给定的表达式之正 (+1)、零 (0) 或负 (-1) 号。

语法:

SIGN(numeric_expression)

例:

SIGN(123)    SIGN(0)    SIGN(-456)

执行结果:

1             0          -1

sqrt

用途:

       传回给定表达式的平方。

语法:

SQRT(numeric_expression)

例:

SQRT(10)

执行结果:

100

 

 

- 作者: zgmchina 2005年08月19日, 星期五 08:29  回复(0) |  引用(0) 加入博采

MY BLOG

- 作者: zgmchina 2005年08月8日, 星期一 09:30  回复(0) |  引用(0) 加入博采