文档库 最新最全的文档下载
当前位置:文档库 › SQL语句大全

SQL语句大全

SQL语句大全

Ⅰ、sql语句基本语法

①每一条sql语句必须以分号结束

②每条sql语句可以单独写成一行,也可以分成若干行

③sql语句对大小写不敏感,对于sql语句的关键字,表名,列名等可以大小写混合,但对列的内容则大小写敏感

Ⅱ、对象的命名约定

sql server用三段式名字标识对象

数据库名.所有者名.对象名

前两者可以省略,系统自动有一个默认值。数据库名的默认值是当前数据库,所有者名的默认值是数据库的所有者dbo

别名:使用别名的主要目的是增加select语句的可读性。可使用如下语句指派数据表的别名:数据表名称as 数据表别名

注意:如果为数据表指定了别名,则在相应的T-sql语句中,对该数据表的所有显示引用都必须使用别名,而不能使用数据表名

ASP连接11种数据库语法总结时间:2009-05-05 22:30:22来源:网络作者:未知点击:72次

经常使用到有关数据库的操作。包括连接代码、SQL命令等等,又不曾刻意去记忆它们(我本人是不愿意去记这东东),所以常常在用到的时候又去查书本,翻来翻去。一些比较少用的数据库还不一定能顺利找到,所以现在把它们全归纳到这里,提供大家参考。

<一>数据库的连接方法:

1.Access数据库的DSN-less连接方法:

set adocon=Server.Createobject("adodb.connection")

adoconn.Open"Driver={Microsoft Access Driver(*.mdb)};DBQ="& _

Server.MapPath("数据库所在路径")

2.Access OLE DB连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Provider=Microsoft.Jet.OLEDB.4.0;"& _

"Data Source=" & Server.MapPath("数据库所在路径")

3.SQL server连接方法:

set adocon=server.createobject("adodb.recordset")

adocon.Open"Driver={SQL Server};Server=(Local);UID=***;PWD=***;"& _

"database=数据库名;"

4.SQL server OLE DB连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"provider=SQLOLEDB.1;Data Source=RITANT4;"& _

"user ID=***;Password=***;"& _

"inital Catalog=数据库名"

5.Oracle 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Driver={microsoft odbc for oracle};server=oraclesever.world;uid=admin;pwd=pass;"

6.Oracle OLE DB 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Provider=OraOLEDB.Oracle;data source=dbnam e;user id=admin;password=pass;"

7.dBase 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Driver={microsoft dbase driver(*.dbf)};driverid=277;dbq=------------;"

8.mySQL 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Driver={mysql};database=yourdatabase;

uid=username;pwd=yourpassword;option=16386;"

9.Visual Foxpro 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Driver={microsoft Visual Foxpro driver};sourcetype=DBC;sourceDB=*.dbc;Exclusive=No;"

10.MS text 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Driver={microsoft text driver(*.txt; *.csv)};dbq=-----;"&_

"extensions=asc,csv,tab,txt;Persist SecurityInfo=false;"

11.MS text OLE DB 连接方法:

set adocon=Server.Createobject("adodb.connection")

adocon.open"Provider=microsof.jet.oledb.4.0;data source=your_path;"&_

"Extended Properties'text;FMT=Delimited'"

<二>常用的四种SQL命令:

1.查询数据记录(Select)

语法:Select 字段串行From table Where 字段=内容

例子:想从book表中找出作者为"cancer"的所有记录,SQL语句便如下:

select * from book where author=’cancer’

"*"是取出book表所有的字段,如查询的字段值为数字,则其后的"内容"便无须加上单引号,如是日期,则在Access中用(#)包括,而在SQL server中则用(’)包括,

如:

select * from book where id=1

select * from book where pub_date=#2002-1-7# (Access)

select * from book where pub_date=’2002-1-7’ (SQL Server)

提示:

日期函数to_date不是标准sql文,不是所有的数据库适用,所以大家在使用的时候要参考数据库具体语法

另外如果是查询传入的变量,则如下:

strau=request.form("author")

strsql="select * from book where author=’"&strau&"’"

如果查询的是数字,则:

intID=request.form("id")

strsql="select * from book where id="&intID

在很多数据库中,如:oracle,上面的语句是可以写成:

strsql="select * from book where id='"&intID&"'"

但是字符型一定不能按照数字格式写,需要注意。

本篇文章来源于:开发学院https://www.wendangku.net/doc/0b12092837.html, 原文链接:https://www.wendangku.net/doc/0b12092837.html,/2009/0505/3767.php

SQL 数据库基础操作语法总结

说明:

用{ }表示括号里的内容是必写的,用[ ]表示括号里的内容可写可不写;用<>表示在实际编写语句时可以用相应的内容代替;用A|B表示A或B的意思(只能选一个);用[,...n]表示重复前面的内容。

-------------------------------------------------------------------------------------------

一、对数据库操作

1.创建数据库

基本语法格式:

CREATE DATABASE 数据库名

[ON

{[PRIMARY ]

(NAME=逻辑文件名,

FILENAME=’操作系统下的文件名和路径’

[,SIZE=文件初始容量]

[,MAXSIZE={文件最大容量|UNLIMITED}]

[,FILEGROWTH=文件的增量])

}[ ,...n ]

]

[LOG ON

{(NAME=逻辑文件名,

FILENAME=’操作系统下的文件名和路径’

[,SIZE=文件初始容量]

[,MAXSIZE={文件最大容量|UNLIMITED}]

[,FILEGROWTH=文件的增量])

}[ ,...n ]

]

示例:

create database StuInfo

on primary

(

name = StuInfo,filenam e='E:\作业练习\SQL Server\第2周\StuInfo.mdf',

size =3MB,

maxsize =10MB,

filegrowth=1MB

log on

(

name = StuInfo_Log,

filename = 'E:\作业练习\SQL Server\第2周\StuInfo_Log.Ldf',

size = 1MB,

maxsize = 5MB,

filegrowth=1MB

)

Go

2.显示数据库信息

基本语法格式:

SP_HELPDB 数据库名

3.扩充数据库容量

基本语法格式:

ALTER DATABASE 数据库名

MODIFY FILE

(NAME=逻辑文件名,

[,SIZE=文件初始容量]

[,MAXSIZE={文件最大容量|UNLIMITED} ]

[,FILEGROWTH=文件增长幅度]

)

示例:

ALTER DATABASE NewSales

MODIFY FILE

(NAME=’NewSales’,SIZE=8MB)

GO

4.重命名数据库

语法格式:

SP_RENAMEDB ‘数据库原名’,’数据库新名’

5.删除数据库

语法格式:

DROP DATABASE 数据库名{,...n}

6.分离数据库

语法格式:

SP_DETACH_DB ‘数据库名’[,[@skipchecks=]’skipchecks’]

示例:

EXEC SP_DETACH_DB ‘NewSales’,’true’

-----------------------------------------------------------------------------------------------------------------------------------------------------

二、对数据表操作

1.创建表

语法格式:

CREATE TABLE[[数据库名.]表所有者.]表名

(列名列的属性[,...n])

示例:

USE Sales

CREATE TABLE Sell

(

销售编号int not null primary key IDENTITY(1,2),--主键,自动增长,1开始2增量

商品编号int not null references Goods(商品编号),--设外键(方法一)

数量int not null check( 数量>0 and 数量<0 ),--核查约束

售出时间DateTime not null Default(getdate()),--默认时间

售货员工编号char(6) not null,

--设外键(方法二)

Constraint FK_Sell_Employees FOREIGN KEY (售货员工编号) REFERENCES Employees(编号)

)

GO

2.禁(启)用约束

禁/启用约束语法格式:

ALTER TABLE 表名

CHECK/NOCHECK CONSTRAINT 约束名

3.查看表属性

语法格式:

EXECUTE SP_HELP 表名

4.添加列:

示例:

alter table employees

add 邮箱varchar(30)

5.修改列:

示例:

alter table employees

alter column 邮箱varchar(20)

6.删除列:

示例:

alter table employees

drop column 邮箱

7.重新命名表

语法格式:

EXECUTE SP_RENAME ‘旧表名’,’新表名’

8.删除表

语法格式:

DROP TABLE employees

-----------------------------------------------------------------------------------------------------------------------------------------------------

9.插入数据

语法格式:

INSERT [INTO] 目标表名

[(字段列表)]

{VALUES({DEFAULT | NULL | 表达式} [,...n] ) | 执行语句}

示例:

insert into employees (编号,姓名,性别) --当只插入部分字段的值时,像这样标明字段标识出来. values ('1304','李明',1) --假如编号为自动增加,则应省去输入'1304',

--------------------------------------------------------------------------------------

--或者这样插入全部字段数据.假如还缺一个字段"销售部"

insert into employees values ('1304','李明',1,'销售部')

10.修改数据

语法格式:

UPDATE 目标表名

SET{列名={表达式| DEFAULT | NULL }[,...n] }

{ [FROM]{<源表名>}[,...n]}

[WHERE <搜索条件> ]

示例1:

UPDATE Employees

SET 电话='0771*******'

WHERE 编号='1304'

示例2:

UPDATE Goods

SET Goods.零售价=Goods.零售价*0.95

FROM Goods,Employees

WHERE Goods.进货时间=’2005-5-20’AND Employees.姓名=’李明’

AND Employees .编号=Goods.进货员工编号

11.删除数据

语法格式:

DELETE [FROM] 目标表名

[FROM 源表名]

[WHERE {搜索条件}]

示例:

DELETE FROM 电话 where 编号='1304'

-----------------------------------------------------------------------------------------------------------------------------------------------------

三、设置表约束

//当需要添加多个约束时,只需要一个add关键字就可以了.

--添加主键约束

use sale

go

alter table goods

add constraint PK_GoodsNo primary key (商品编号)

--添加外键约束

use 数据库名

go

alter table 表名

add constraint 外键约束名foreign key (列名)

references 被关联的表名(列名)

--设置唯一值.

use sale

alter table employees

add constraint IX_EmployeesName2 unique (姓名)

--设置核查约束.

use sale

alter table employees

add constraint CK_EmployeesDep check (部门='财务部'or 部门='库存部'or 部门='销售部'or 部门='采购部')

--设置默认值约束,使表格自动记录下输入数据时的时间.

use sale

alter table goods

add constraint DF_GoodsDate Default (getdate ()) for 进货时间

--自动编号的方法(1是始量,2是增量)???

use sale

alter table goods

alter column 商品编号char(8) not null identity(1,2)

--查看约束(sp_helpconstraint 不是随意设置的)

use sale

go

exec sp_helpconstraint employees

go

-----------------------------------------------------------------------------------------------------------------------------------------------------

三、数据库的查询

1.Select 语句基本格式:

Select [ All | Distinct ]

[ Top n [Percent] [ With Ties ] ]

列名

<列名>::=

{ *

| { 表名| 视图名| 表的别名}.*

| { 列名| 表达式| Identitycol | Rowguidcol }

| 别名= 表达式

}

[,...n]

2.使用通配符“*”,返回所有列值

示例:

Select * From employees

3.使用Distinct关键字消除重复记录

示例:

Select Distinct 生产厂商From goods

4.使用Top n( Percent )指定返回查询结果的前n行(个百分比)记录

示例1:

Select T op 4 商品名称,进货价,数量From goods

示例2:

Select T op 30 Percent商品名称,进货价,数量From goods

5.使用列别名改变查询结果中的的列名(三种方法)

示例:

Select 编号AS number, name=姓名, 电话telephone From employees

6.使用表达式

示例:

Select 商品名称,进货价*数量AS 总金额From goods

7.Like关键字

示例:

Select * From employees Where 姓名 Like ‘李%’

说明:

_ 代表任意一个字符(有些数据库使用*)

% 代表任意长度的字符串

[ ] 代表某个字符的取值范围,如:[a-e]指集合[abcde]内的任何一个字符

[^] 取非,与上相反.

8.Between关键字

示例:

Select 商品名称,零售价From goods Where 零售价Between 2000 And 3000

9.In 关键字

示例:

Select 商品名称,零售价From goods Where 商品名称In(‘打印机’,’摄像机’,’照相机’) 10.Null 关键字

示例:

Select * Form employees Where 电话Is Not Null

11.Order By 子句

语法格式:

Order By 列名列表[ Asc | DESC ]

示例:

Select 商品名称,进货价From goods Order By 进货价Desc

说明:当Order By 后什么都不写的时候,默认选择Asc

12.Into 子句

语法格式:

Into 新表名

示例:

Select T op 15 Percent 商品名称,进货价*数量AS 总金额Into 金额表

13.聚合函数

(暂略)

14.多表联接查询

(暂略)

-----------------------------------------------------------------------------------------------------------------------------------------------------

四、视图

1.语法格式:

Create View [<数据库名>.][<所有者>.] 视图名[ (列名[,...n]) ]

[ With { Encryption | Schemabinding | Veiw_Metadata } ]

AS

Select 查询语句

[ With Check Option ]

说明:

(暂略)

示例1:

Create View v_sales1

As

Select 销售编号,sell.商品编号,sell.数量,商品名称,编号,姓名

From sell,goods,employees

Where goods.商品编号=sell.商品编号

And goods.进货员工编号=employees.编号

And goods.姓名=’赵飞燕’

-----------------------------------------------------------------------------------------------------------------------------------------------------

五、存储过程

1.语法格式:

Create Proc[edure] [所有者.] 存储过程名[;整数]

[ {@参数数据类型} [Varying] [=默认值] [Output] ][,...n]

[ With { Recompile | encryption | Recompile,Encryption | Execute_As_Clause } ] [For Replication]

As

{ SQL语句[,...n] | External Name assembly_name.class_name.method_name }

说明:

(暂略)

示例1:

在Sales数据库中建立一个名为proc_find的存储过程,如果查询到指定的商品,则用RETURN语句返回1,否则返回0。

--创建存储过程

create proc proc_find

@spmc char(20)

as

if exists (select * from goods

where 商品名称=@spmc)

return 1

else

return 0

--执行存储过程

declare @i int

exec @i=proc_find '打印机'

select @i as 返回值

示例2:

在Sales数据库中建立一个名为date_to_date_sales的存储过程,该存储过程将返回在两个指定日期之间的所有销售记录。

create proc date_to_date_sales

@d1 datetime ,@d2 datetime

as

select * from sell

where 售出时间 between @d1 and @d2

exec date_to_date_sales '2004-1-1','2005-1-1'

-----------------------------------------------------------------------------------------------------------------------------------------------------

六、触发器

1.语法格式:

Create Trigger 触发器名称

On { All Server | Database }

[ With Encryption | Execute As Clause [,...n] ]

{ For | After } { 事件名称| 事件分组名称} [,...n]

As { SQL语句[ ; ] [,...n] | External Name assembly_name.class_nam e.method_name [ ; ] }

示例1:

在Sales数据库中,创建触发器tri_ReportGoods,当商品库存低于5件时发出库存量少请求进货的提示信息。

create trigger tri_ReportGoods

on sell

for insert

as

declare @sbh char(6),@smc char(20),@sysl int

select @sbh=inserted.商品编号,@smc=商品名称

from inserted join goods on inserted.商品编号=goods.商品编号

Select @sysl=goods.数量-isnull(sum(sell.数量),0)

from goods left join sell on goods.商品编号= sell.商品编号

where goods.商品编号=@sbh

GROUP BY goods.商品编号,goods.数量

if @sysl<5

print @smc+'的库存少于5件,请及时进货'

--测试触发器

insert into sell

values('2',2,'2009-12-1','1301')

示例2:

在Sales数据库中,创建触发器tri_GoodsCount,当商品销售之后,相应的库存要有所变化。

create trigger tri_GoodsCount

on sell

for insert

as

declare @sbh char(6),@sl int

select @sbh=inserted.商品编号,@sl=inserted.数量

from inserted join sell on inserted.商品编号=sell.商品编号

update goods

set 数量=数量-@sl

where goods.商品编号=@sbh

--测试触发器

insert into sell

values('2',2,'2009-12-2','1301')

select * from goods

示例3:

更改tri_ReportGoods触发器,当商品库存低于10件时才发出库存量少请求进货的提示信息,并对触发

器定义文本进行加密。

alter trigger tri_ReportGoods

on sell

WITH ENCRYPTION

for insert

as

declare @sbh char(6),@smc char(20),@sysl int

select @sbh=inserted.商品编号,@smc=商品名称

from inserted join goods on inserted.商品编号=goods.商品编号

Select @sysl=goods.数量-isnull(sum(sell.数量),0)

from goods left join sell on goods.商品编号= sell.商品编号

where goods.商品编号=@sbh

GROUP BY goods.商品编号,goods.数量

if @sysl<10

print @smc+'的库存少于10件,请及时进货'

示例4:

在Sales数据库中,创建一个DDL触发器,以防止表的删除。

create trigger tri_ddl

on database

for drop_table

as

print '不能删除该数据库中的表。'

rollback

--测试触发器

drop table dbo.aa

示例5:

创建一个DDL触发器,保护当前服务器中的所有数据库不能被修改。

create trigger tri_alter_database

on all server

for alter_database

as

print '不能修改该数据库。'

rollback

本篇文章来源于:开发学院https://www.wendangku.net/doc/0b12092837.html, 原文链接:https://www.wendangku.net/doc/0b12092837.html,/2011/0516/31629.php

--语句功能

--数据操作

SELECT --从数据库表中检索数据行和列

INSERT --向数据库表添加新数据行

DELETE --从数据库表中删除数据行

UPDA TE --更新数据库表中的数据

--数据定义

CREA TE TABLE --创建一个数据库表

DROP TABLE --从数据库中删除表

ALTER TABLE --修改数据库表结构

CREA TE VIEW --创建一个视图

DROP VIEW --从数据库中删除视图

CREA TE INDEX --为数据库表创建一个索引DROP INDEX --从数据库中删除索引

CREA TE PROCEDURE --创建一个存储过程DROP PROCEDURE --从数据库中删除存储过程CREA TE TRIGGER --创建一个触发器

DROP TRIGGER --从数据库中删除触发器

CREA TE SCHEMA --向数据库添加一个新模式DROP SCHEMA --从数据库中删除一个模式CREA TE DOMAIN --创建一个数据值域

ALTER DOMAIN --改变域定义

DROP DOMAIN --从数据库中删除一个域

--数据控制

GRANT --授予用户访问权限

DENY --拒绝用户访问

REVOKE --解除用户访问权限

--事务控制

COMMIT --结束当前事务

ROLLBACK --中止当前事务

SET TRANSACTION --定义当前事务数据访问特征--程序化SQL

DECLARE --为查询设定游标

EXPLAN --为查询描述数据访问计划

OPEN --检索查询结果打开一个游标

FETCH --检索一行查询结果

CLOSE --关闭游标

PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句

DESCRIBE --描述准备好的查询

---局部变量

declare @id char(10)

--set @id = '10010001'

select @id = '10010001'

---全局变量

---必须以@@开头

--IF ELSE

declare @x int @y int @z int

select @x = 1 @y = 2 @z=3

if @x > @y

print 'x > y' --打印字符串'x > y'

else if @y > @z

print 'y > z'

else print 'z > y'

--CASE

use pangu

update employee

set e_wage =

case

when job_level = ’1’ then e_wage*1.08

when job_level = ’2’ then e_wage*1.07

when job_level = ’3’ then e_wage*1.06

else e_wage*1.05

end

--WHILE CONTINUE BREAK

declare @x int @y int @c int

select @x = 1 @y=1

while @x < 3

begin

print @x --打印变量x 的值

while @y < 3

begin

select @c = 100*@x + @y

print @c --打印变量c 的值

select @y = @y + 1

end

select @x = @x + 1

select @y = 1

end

--W AITFOR

--例等待1 小时2 分零3 秒后才执行SELECT 语句waitfor delay ’01:02:03’

select * from employee

--例等到晚上11 点零8 分后才执行SELECT 语句

waitfor time ’23:08:00’

select * from employee

***SELECT***

select *(列名) from table_name(表名) where column_name operator value

ex:(宿主)

select * from stock_information where stockid = str(nid)

stockname = 'str_name'

stockname like '% find this %'

stockname like '[a-zA-Z]%' --------- ([]指定值的范围)

stockname like '[^F-M]%' --------- (^排除指定范围)

--------- 只能在使用like关键字的where子句中使用通配符)

or stockpath = 'stock_path'

or stocknumber < 1000

and stockindex = 24

not stock*** = 'man'

stocknumber between 20 and 100

stocknumber in(10,20,30)

order by stockid desc(asc) --------- 排序,desc-降序,asc-升序

order by 1,2 --------- by列号

stockname = (select stockname from stock_information where stockid = 4)

--------- 子查询

--------- 除非能确保内层select只返回一个行的值,

--------- 否则应在外层where子句中用一个in限定符

select distinct column_name form table_name --------- distinct指定检索独有的列值,不重复select stocknumber ,"stocknumber + 10" = stocknumber + 10 from table_name

2007-5-14 09:05 回复

222.90.0.* 2楼

select stockname , "stocknumber" = count(*) from table_name group by stockname

--------- group by 将表按行分组,指定列中有相同的值

having count(*) = 2 --------- having选定指定的组

select *

from table1, table2

where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接

select stockname from table1

union [all] ----- union合并查询结果集,all-保留重复行

select stockname from table2

***insert***

insert into table_name (Stock_name,Stock_number) value ("xxx","xxxx")

value (select Stockname , Stocknumber from Stock_table2)---value为select语句

***update***

update table_name set Stockname = "xxx" [where Stockid = 3]

Stockname = default

Stockname = null

Stocknumber = Stockname + 4

***delete***

delete from table_name where Stockid = 3

truncate table_name ----------- 删除表中所有行,仍保持表的完整性

drop table table_name --------------- 完全删除表

***alter table*** --- 修改数据库表结构

alter table database.owner.table_name add column_name char(2) null .....

sp_help table_name ---- 显示表已有特征

create table table_name (name char(20), age smallint, lname varchar(30))

insert into table_name select ......... ----- 实现删除列的方法(创建新表)

alter table table_name drop constraint Stockname_default ---- 删除Stockname的default约束***function(/*常用函数*/)***

----统计函数----

A VG --求平均值

COUNT --统计数目

MAX --求最大值

MIN --求最小值

SUM --求和

--A VG

use pangu

select avg(e_wage) as dept_avgWage

from employee

group by dept_id

--MAX

--求工资最高的员工姓名

use pangu

select e_name

from employee

where e_wage =

(select max(e_wage)

from employee)

--STDEV()

--STDEV()函数返回表达式中所有数据的标准差

--STDEVP()

--STDEVP()函数返回总体标准差

--V AR()

--V AR()函数返回表达式中所有值的统计变异数

--V ARP()

--V ARP()函数返回总体变异数

----算术函数----

/***三角函数***/

SIN(float_expression) --返回以弧度表示的角的正弦

COS(float_expression) --返回以弧度表示的角的余弦

TAN(float_expression) --返回以弧度表示的角的正切

COT(float_expression) --返回以弧度表示的角的余切

/***反三角函数***/

ASIN(float_expression) --返回正弦是FLOA T 值的以弧度表示的角

ACOS(float_expression) --返回余弦是FLOA T 值的以弧度表示的角

A TAN(float_expression) --返回正切是FLOA T 值的以弧度表示的角

A TAN2(float_expression1,float_expression2)

--返回正切是float_expression1 /float_expres-sion2的以弧度表示的角

DEGREES(numeric_expression)

--把弧度转换为角度返回与表达式相同的数据类型可为

--INTEGER/MONEY/REAL/FLOA T 类型

RADIANS(numeric_expression) --把角度转换为弧度返回与表达式相同的数据类型可为

--INTEGER/MONEY/REAL/FLOA T 类型

EXP(float_expression) --返回表达式的指数值

LOG(float_expression) --返回表达式的自然对数值

LOG10(float_expression)--返回表达式的以10 为底的对数值

SQRT(float_expression) --返回表达式的平方根

/***取近似值函数***/

CEILING(numeric_expression) --返回>=表达式的最小整数返回的数据类型与表达式相同可为

--INTEGER/MONEY/REAL/FLOA T 类型

2007-5-14 09:05 回复

222.90.0.* 3楼

FLOOR(numeric_expression) --返回<=表达式的最小整数返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOA T 类型

ROUND(numeric_expression) --返回以integer_expression 为精度的四舍五入值返回的数据

--类型与表达式相同可为INTEGER/MONEY/REAL/FLOA T 类型

ABS(numeric_expression) --返回表达式的绝对值返回的数据类型与表达式相同可为

--INTEGER/MONEY/REAL/FLOA T 类型

SIGN(numeric_expression) --测试参数的正负号返回0 零值1 正数或-1 负数返回的数据类型--与表达式相同可为INTEGER/MONEY/REAL/FLOA T 类型

PI() --返回值为π即3.1415926535897936

RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数

----字符串函数----

ASCII() --函数返回字符表达式最左端字符的ASCII 码值

CHAR() --函数用于将ASCII 码转换为字符

--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值

LOWER() --函数把字符串全部转换为小写

UPPER() --函数把字符串全部转换为大写

STR() --函数把数值型数据转换为字符型数据

LTRIM() --函数把字符串头部的空格去掉

RTRIM() --函数把字符串尾部的空格去掉

LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串

CHARINDEX(),PA TINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码

--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0 值

DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异

--0 两个SOUNDEX 函数返回值的第一个字符不同

--1 两个SOUNDEX 函数返回值的第一个字符相同

--2 两个SOUNDEX 函数返回值的第一二个字符相同

--3 两个SOUNDEX 函数返回值的第一二三个字符相同

--4 两个SOUNDEX 函数返回值完全相同

相关文档