SQL命令大全--中文翻译
2009-05-2413:25:39浏览次数:0
-
SQL语句功能
--数据操作
SELECT--从数据库表中检索数据行和列INSERT--向数据库表添加新数据行
DELETE--从数据库表中删除数据行
UPDATE--更新数据库表中的数据
--数据定义
三角函数查询表CREATE TABLE--创建一个数据库表
DROP TABLE--从数据库中删除表
ALTER TABLE--修改数据库表结构
CREATE VIEW--创建一个视图
DROP VIEW--从数据库中删除视图
CREATE INDEX--为数据库表创建一个索引DROP INDEX--从数据库中删除索引
CREATE PROCEDURE--创建一个存储过程DROP PROCEDURE--从数据库中删除存储过程CREATE TRIGGER--创建一个触发器
DROP TRIGGER--从数据库中删除触发器CREATE SCHEMA--向数据库添加一个新模式DROP SCHEMA--从数据库中删除一个模式CREATE 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
--WAITFOR
--例等待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 stocksex=’man’
stocknumber between20and100
stocknumber in(10,20,30)
order by stockid desc(asc)---------排序,desc-降序,asc-升序
order by1,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+10from table_name
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(
sp_help table_name----显示表已有特征
create table table_name(name char(20),age smallint,lname varchar(30))
insert into table_.-----实现删除列的方法(创建新表)
alter table table_name drop constraint Stockname_default----删除Stockname的default约束***function(/*常用函数*/)***
----统计函数----
AVG--求平均值
COUNT--统计数目
MAX--求最大值
MIN--求最小值
SUM--求和
--AVG
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()函数返回总体标准差
--VAR()
--VAR()函数返回表达式中所有值的统计变异数
--VARP()
--VARP()函数返回总体变异数
----算术函数----
/***三角函数***/
SIN(float_expression)--返回以弧度表示的角的正弦
COS(float_expression)--返回以弧度表示的角的余弦
TAN(float_expression)--返回以弧度表示的角的正切
COT(float_expression)--返回以弧度表示的角的余切
/***反三角函数***/
ASIN(float_expression)--返回正弦是FLOAT值的以弧度表示的角
ACOS(float_expression)--返回余弦是FLOAT值的以弧度表示的角
ATAN(float_expression)--返回正切是FLOAT值的以弧度表示的角
ATAN2(float_expression1,float_expression2)
--返回正切是float_expression1/float_expres-sion2的以弧度表示的角
DEGREES(numeric_expression)
--把弧度转换为角度返回与表达式相同的数据类型可为
-
-INTEGER/MONEY/REAL/FLOAT类型
RADIANS(numeric_expression)--把角度转换为弧度返回与表达式相同的数据类型可为
--INTEGER/MONEY/REAL/FLOAT类型
EXP(float_expression)--返回表达式的指数值
LOG(float_expression)--返回表达式的自然对数值
LOG10(float_expression)--返回表达式的以10为底的对数值
SQRT(float_expression)--返回表达式的平方根
/***取近似值函数***/
CEILING(numeric_expression)--返回>=表达式的最小整数返回的数据类型与表达式相同可为
--INTEGER/MONEY/REAL/FLOAT类型
FLOOR(numeric_expression)--返回<=表达式的最小整数返回的数据类型与表达式相同可为--INTEGER/MONEY/REAL/FLOAT类型
ROUND(numeric_expression)--返回以integer_expression为精度的四舍五入值返回的数据--类型与表达式相同可为INTEGER/MONEY/REAL/FLOAT类型
ABS(numeric_expression)--返回表达式的绝对值返回的数据类型与表达式相同可为
--INTEGER/MONEY/REAL/FLOAT类型
SIGN(numeric_expression)--测试参数的正负号返回0零值1正数或-1负数返回的数据类型--与表达式相同可为INTEGER/MONEY/REAL/FLOAT类型
PI()--返回值为π即3.1415926535897936
RAND([integer_expression])--用任选的[integer_expression]做种子值得出0-1间的随机浮点数
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论