SQL命令大全-中英文对照

合集下载

sql语句大全及用法 freebuf

sql语句大全及用法 freebuf

sql语句大全及用法 freebuf SQL(Structured Query Language)是一种用于管理关系型数据库的编程语言,它使用一系列指令来操作数据库。

下面是一些常用的SQL语句及其用法:1. SELECT:从数据库中检索数据。

用法:SELECT column1, column2, … FROM table_name;2. WHERE:过滤记录,执行条件查询。

用法:SELECT * FROM table_name WHERE column_name operator value;3. INSERT INTO:将新记录插入到表中。

用法:INSERT INTO table_name(column1, column2, …) VALUES(value1, value2, …);4. UPDATE:更新表中的记录。

用法:UPDATE table_name SET column_name = new_value WHERE column_name = value;5. DELETE:删除表中的记录。

用法:DELETE FROM table_name WHERE column_name = value;6. JOIN:在两个或多个表之间建立连接,并从中检索数据。

用法:SELECT * FROM table_name1 JOIN table_name2 ONtable_name1.column_name = table_name2.column_name;7. GROUP BY:根据一个或多个列对结果进行分组。

用法:SELECT column1, COUNT(column2) FROM table_name GROUP BY column1;8. ORDER BY:根据一个或多个列对结果进行排序。

用法:SELECT * FROM table_name ORDER BY column_nameASC/DESC;9. DISTINCT:返回不同的值,消除重复的行。

SQL命令大全Word版

SQL命令大全Word版

下列语句部分是Mssql语句,不可以在access中使用。

SQL分类:DDL类型包括数据库、表的创建,修改,删除,声明—数据定义语言(CREATE,ALTER,DROP,DECLARE)DML类型包括数据表中记录的查询,删除,修改,插入—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)DCL类型包括数据库用户赋权,废除用户访问权限,提交当前事务,中止当前事务—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)首先,简要介绍基础语句:1、说明:创建数据库CREATE DATABASE db1(db1代表数据库表,可自命名)2、说明:删除数据库drop database db1(db1代表数据库表,可自命名)3、说明:备份sql server--- 创建备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'--- 开始备份BACKUP DATABASE pubs TO testBack4、说明:创建新表create table tb1(Id int not null primary key,name varchar,..)(tb1为数据表名,ID为字段,int为数据类型整型,not null为数据是否可为空,Primary Key为主键设置,其中not null,primary key为可选项,字段,数据类型自定义。

)根据已有的表创建新表:A:create table tab_new like tab_old (使用旧表创建新表)B:create table tab_new as select col1,col2… from tab_old definition only5、说明:删除新表:drop table tb16、说明:增加一个列:Alter table tabname add column col type注:列增加后将不能删除。

SQL基本查询语句翻译

SQL基本查询语句翻译

select sno,sname from student从学生资料表中查询全体学生的学号、姓名select sname,sno,sdept from student从学生资料表中查询全体学生的姓名、学号和系别select * from student从学生资料表中查询全体学生的详细信息select sname,2006-sage from student从学生资料表中查询全体学生的姓名及其出生年月select sname,2006-sage as '出生年月' from student从学生资料表中查询全体学生的姓名及其出生年月select sname as'姓名',2006-sage as '出生年月' from student从学生资料表中查询全体学生的姓名及其出生年月select sname 姓名,2006-sage 出生年月from student从学生资料表中查询全体学生的姓名及其出生年月select distinct sno from student从学生资料表中查询所有不同的学号select sname from student where sdept='计算机系'从学生资料表中查询所在系为计算机系的学生姓名select sname,sage from student where sage<20从学生资料表中查询年龄在20岁以下的学生姓名及其年龄select sname,sdept,sage from student where sage between 20 and 23从学生资料表中查询年龄在20至23岁(包括20岁和23岁)之间的学生姓名、系别和年龄select sname,sdept,sage from studen t where sage>=20 and sage<=23从学生资料表中查询年龄在20至23岁(包括20岁和23岁)之间的学生姓名、系别和年龄select sname,sdept,sage from student where sage not between 20 and 23从学生资料表中查询年龄不在20至23岁之间的学生姓名、系别和年龄select sname,sdept,sage from student where sage<20 or sage>23从学生资料表中查询年龄年龄小于20岁或者大于23岁的学生姓名、系别和年龄select sname,ssex from student where sdept in ('信息系','数学系','计算机系')从学生资料表中查询信息系、数学系和计算机系学生的姓名和性别select sname,ssex from studen t where sdept='信息系' or sdept='数学系' or sdept='计算机系'从学生资料表中查询信息系或者数学系或者计算机系学生的姓名和性别select sname,ssex from student where sdept not in ('信息系','数学系','计算机系')从学生资料表中查询既不是信息系、数学系又不是计算机系的学生的姓名和性别select sname,ssex from student where sdept!='信息系' or sdept!='数学系' or sdept!='计算机系'从学生资料表中查询不是信息系或者不是数学系或者不是计算机系的学生的姓名和性别select sname,ssex from student where sdept!='信息系' and sdept!='数学系' and sdept!='计算机系'从学生资料表中查询既不是信息系、数学系又不是计算机系的学生的姓名和性别select * from student where sname like'张%'从学生资料表中查询所有姓张学生的详细信息select * from student where sname like'[张李刘]%'从学生资料表中查询所有姓张、李、刘的学生的详细信息select * from student where sname like'_[小大]%'从学生资料表中查询名字中第2个字为小或者大字的学生的详细信息select * from student where sname not like'刘%'从学生资料表中查询不姓刘的学生的详细信息select * from student where sno like'%[^2-6]'从学生资料表中查询学号不以2-6任意一个字符结尾的学生的详细信息select * from sc where grade is null从学生成绩表中查询无成绩的学生的详细信息select * from sc where grade is not null从学生成绩表中查询有成绩的学生的详细信息select * from student where sdept='计算机系' and sage<20从学生资料表中查询计算机系且年龄小于20岁的学生的详细信息select * from studen t order by sage从学生资料表中查询所有学生的详细信息,查询结果按年龄升序排列select * from studen t order by sage desc从学生资料表中查询所有学生的详细信息,查询结果按年龄降序排列select sno,grade from sc where cno='c02' order by grade desc从学生成绩表中查询课程号为c02的所有学生的学号和成绩,查询结果按成绩降序排列select * from student order by sdept,sage desc从学生资料表中查询所有学生的详细信息,查询结果按系别升序排列,同一系中的学生按年龄降序排列select count(*) from student从学生资料表中查询学生的总人数select count(distinct sno) from sc从学生成绩表中查询选修了课程的学生人数select sum(grade) from sc where sno='9512101'从学生成绩表中查询并计算学号为9512101的学生的总成绩select avg(grade) from sc where cno='c01'从学生成绩表中查询并计算课程号为c01的学生的平均成绩select max(grade),min(grade) from sc where cno='c01'从学生成绩表中查询课程号为c01的学生最高分数和最低分数select cno as 课程号,count(sno) as 选课人数from sc group by cno从学生成绩表中查询并计算各个课程号及相应的选课人数select sno 学号,count(*) 选课门数,avg(grade) 平均成绩from sc group by sno从学生成绩表中查询并计算各个学号及对应的选课门数并求平均成绩select sno from sc group by sno having count(*)>3从学生成绩表中查询选修了3门及以上课程的学生学号select sno,avg(grade),count(*) from sc group by sno having count(*)>=4从学生成绩表中查询选修了4门及以上的学生学号、平均成绩及课程数select * from studen t inner join sc on student.sno=sc.sno从学生资料表和成绩表中查询每个学生及其选修课程的情况select student.sno,sname,ssex,sage,sdept,cno,grade,xklb from student join sc on student.sno=sc.sno从学生资料表和成绩表中查询每个学生及其选修课程情况的学生学号、姓名、姓名、年龄、课程号、成绩和相关类别select sname,cno,grade from student join sc on s tudent.sno=sc.sno where sdept='计算机系'从学生资料表和成绩表中查询计算机系的每个学生及相应选修课程的学生姓名、课程号和成绩。

SQLServer中英文对照文档

SQLServer中英文对照文档

SQLServer中英⽂对照⽂档"(全部)"级别 ((All) level)"全部"成员 (All member)ActiveX 数据对象 (ActiveX Data Objects)ActiveX 数据对象(多维)(ADO MD) (ActiveX Data Objects (Multidimensional) (ADO MD)) ANSI 到 OEM 的转换 (ANSI to OEM conversion)API 服务器游标 (API server cursor)bcp 实⽤⼯具 (bcp utility)bcp ⽂件 (bcp files)bigint 数据类型 (bigint data type)binary 数据类型 (binary data type)bit 数据类型 (bit data type)char 数据类型 (char data type)CHECK 约束 (CHECK constraints)CLR 触发器 (CLR trigger)CLR 存储过程 (CLR stored procedure)CLR 函数 (CLR function)CLR ⽤户定义类型 (CLR user-defined type)COM 结构化存储⽂件 (COM-structured storage file)CPU 忙 (CPU busy)DataReaderdatetime 数据类型 (datetime data type)DDL 触发器 (DDL trigger)decimal 数据类型 (decimal data type)DEFAULT 约束 (DEFAULT constraint)DML 触发器 (DML trigger)DSNDTS 包 (DTS package)DTS 包模板 (DTS package template)ETLfloat 数据类型 (float data type)guestimage 数据类型 (image data type)int (integer) 数据类型 (int (integer) data type)master 数据库 (master database)Microsoft 消息队列 (Microsoft Message Queuing)model 数据库 (model database)money 数据类型 (money data type)MSMQMSXnchar 数据类型 (nchar data type)niladic 函数 (niladic functions)ntext 数据类型 (ntext data type)NULLnvarchar 数据类型 (nvarchar data type)ODBC 驱动程序 (ODBC driver)ODBC 数据源 (ODBC data source)OLE DBOLE DB 访问接⼝ (OLE DB provider)OLE DB 使⽤者 (OLE DB consumer)OLE ⾃动化对象 (OLE Automation objects)OLE ⾃动化服务器 (OLE Automation server)OLE ⾃动化控制器 (OLE Automation controller)pubs 数据库 (pubs database)real 数据类型 (real data type)SELECTsmalldatetime 数据类型 (smalldatetime data type)smallint 数据类型 (smallint data type)smallmoney 数据类型 (smallmoney data type)SQL MailSQL Server ⾝份验证 (SQL Server Authentication)SQL Server 事件转发服务器 (SQL Server Event Forwarding Server) SQL 表达式 (SQL expression)SQL 查询 (SQL query)SQL 排序规则 (SQL collation)SQL 数据库 (SQL database)SQL 语句 (SQL statement)sql_variant 数据类型 (sql_variant data type)SQL-92tempdb 数据库 (tempdb database)text 数据类型 (text data type)theta 联接 (theta join)timestamp 数据类型 (timestamp data type)tinyint 数据类型 (tinyint data type)Transact-SQLTransact-SQL 游标 (Transact-SQL cursor)TSXUnicodeUnicode 格式 (Unicode format)Unicode 排序规则 (Unicode collation)UNIQUE 约束 (UNIQUE constraints)uniqueidentifier 数据类型 (uniqueidentifier data type)uniqueifiervarbinary 数据类型 (varbinary data type)varchar 数据类型 (varchar data type)Web 同步 (Web synchronization)WHERE ⼦句 (WHERE clause)Windows Management InstrumentationWindows 排序规则 (Windows collation)WMIWMI 查询语⾔ (WMI Query Language)WQL安全标识符 (SID) (Security Identifier (SID))安全扩展插件 (security extension)安全套接字层 (SSL)安装程序初始化⽂件 (Setup initialization file)按范围分区 (range partitioning)暗⽰性权限 (implied permission)半累加性度量值 (semiadditive measure)绑定 (binding)保存点 (savepoint)报表处理扩展插件 (report processing extension)报表定义 (report definition)报表服务器管理员 (report server administrator)报表快照 (report snapshot)报表模型 (report model)备份 (back up)备份 (backup)备份集 (backup set)备份媒体 (backup media)备份设备 (backup device)备份⽂件 (backup file)备⽤服务器 (standby server)备⽤⽂件 (standby file)备注 (memo)被链接表 (linked table)被引⽤键 (referenced key)本地登录标识 (local login identification)本地订阅 (local subscription)本地多维数据集 (local cube)本地分发服务器 (local Distributor)本地分区视图 (local partitioned view)本地服务器 (local server)本地组 (local group)本机格式 (native format)编写复制脚本 (replication scripting)变化的维度 (changing dimension)变量 (variable)标记 (token)标记化 (tokenization)标量聚合 (scalar aggregate)标识符 (identifier)标识列 (identity column)标识属性 (identity property)表 (table)表达式 (expression)表格格式数据流 (TDS) (tabular data stream (TDS))表级约束 (table-level constraint)表扫描 (table scan)表数据类型 (table data type)表锁 (table lock)别名 (alias)别名 (nickname)别名数据类型 (alias data type)并发 (concurrency)不对称层次结构 (unbalanced hierarchy)不感知游标 (insensitive cursor)不可重复读 (nonrepeatable read)不齐整层次结构 (ragged hierarchy)布尔值 (Boolean)步骤对象 (step object)部分备份 (partial backup)部分差异备份 (partial differential backup)参数化 (parameterization)参数化报表 (parameterized report)参数化⾏筛选器 (parameterized row filter)操作 (action)层次结构 (hierarchy)插⼊查询 (Insert query)插⼊值查询 (Insert Values query)查询优化器 (query optimizer)查找表 (lookup table)差异备份 (differential backup)差异数据库备份 (differential database backup)常规多维数据集 (regular cube)常规维度 (regular dimension)常量 (constant)超⼤型维度 (very large dimension)超⽂本标记语⾔ (HTML) (Hypertext Markup Language (HTML))撤消 (undo)成员 (member)成员变量 (member variable)成员键列 (member key column)成员名列 (member name column)成员委托 (member delegation)成员属性 (member property)成员组 (member group)呈现的报表 (rendered report)呈现扩展插件 (rendering extension)程序集 (assembly)持久化计算列 (persisted computed column)持久性 (persistence)初始快照 (initial snapshot)初始同步 (initial synchronization)触发器 (trigger)传递查询 (pass-through query)传递扩展插件 (delivery extension)传递顺序 (pass order)传递语句 (pass-through statement)串联 (concatenation)垂直分区 (vertical partitioning)垂直筛选 (vertical filtering)纯⽇志备份 (pure log backup)词⼲分析器 (stemmer)磁带备份 (tape backup)存储过程 (stored procedure)存储库 (repository)存储库 SQL 架构 (Repository SQL schema)存储库对象 (repository object)存储库类型信息模型 (RTIM) (Repository Type Information Model (RTIM))存储库引擎 (repository engine)存档⽂件 (archive file)错误⽇志 (error log)错误状态号 (error state number)⼤级别 (large level)⼤容量操作⽇志备份 (bulk log backup)⼤容量导出 (bulk export)⼤容量导⼊ (bulk import)⼤容量⽇志恢复模式 (bulk-logged recovery model)代码页 (code page)单⽤户模式 (single-user mode)单元 (cell)单元集 (cellset)递归分区 (recursive partitioning)点击链接型报表 (clickthrough report)调⽤级接⼝ (call-level interface (CLI))订阅 (subscribe)订阅 (subscription)订阅⽅ (Subscriber)订阅服务器 (subscribing server)订阅过期时间 (subscription expiration period)订阅数据库 (subscription database)定位更新 (positioned update)定型数据集 (training data set)动态 SQL 语句 (dynamic SQL statements)动态恢复 (dynamic recovery)动态快照 (dynamic snapshot)动态筛选器 (dynamic filter)动态锁定 (dynamic locking)动态游标 (dynamic cursor)度量值 (measure)段落还原 (piecemeal restore)断字 (word-breaking)断字符 (word breaker)队列 (queue)对等复制 (peer-to-peer replication)对齐 (alignment)对象 (object)对象变量 (object variable)对象标识符 (object identifier)对象依赖关系 (object dependencies)多对多关系 (many-to-many relationship)多对⼀关系 (many-to-one relationship)多服务器管理 (multiserver administration)多个实例 (multiple instances)多基准差异备份 (multibase differential)多维 OLAP (MOLAP) (multidimensional OLAP (MOLAP))多维表达式 (MDX) (Multidimensional Expressions (MDX))多维结构 (multidimensional structure)多维数据集 (cube)多维数据集⾓⾊ (cube role)多线程服务器应⽤程序 (multithreaded server application)多⽤户 (multiuser)多重继承 (multiple inheritance)⼆进制⼤型对象 (binary large object)发布 (publication)发布保持期 (publication retention period)发布表 (publishing table)发布服务器 (Publisher)发布服务器 (publishing server)发布数据库 (publication database)反⾝关系 (reflexive relationship)返回参数 (return parameters)范围查询 (range query)⽅法 (method)访问接⼝ (provider)⾮聚集索引 (nonclustered index)⾮强制关系 (unenforced relationship)⾮叶 (nonleaf)⾮叶成员 (nonleaf member)分布式查询 (distributed query)分布式分区视图 (distributed partitioned view)分布式事务 (distributed transaction)分段 (segmentation)分发 (distribute)分发保持期 (distribution retention period)分发服务器 (Distributor)分发数据库 (distribution database)分隔符 (delimiter)分配单元 (allocation unit)分区 (partition)分区 (partitioning)分区⽅案 (partition scheme)分区函数 (partition function)分区快照 (partitioned snapshot)分区依据列 (partitioning column)分析服务器 (Analysis server)服务器订阅 (server subscription)服务器名称 (server name)服务器游标 (server cursor)辅助服务器 (secondary server)辅助数据库 (secondary database)⽗级 (parent)复制 (replication)复制冲突查看器 (Replication Conflict Viewer)复制的数据 (replicated data)复制监视器 (Replication Monitor)复制拓扑 (replication topology)⼲扰词 (noise word)隔离级别 (isolation level)跟踪令牌 (tracer token)跟踪⽂件 (trace file)更改脚本 (change script)更新 (update)更新查询 (Update query)更新锁 (update lock)更新统计信息 (update statistics)⼯具 (tool)公共语⾔运⾏时 (common language runtime)共享锁 (shared lock)共享维度 (shared dimension)固定服务器⾓⾊ (fixed server role)固定数据库⾓⾊ (fixed database role)关键字 (keyword)关系 (relationship)关系 OLAP (ROLAP) (relational OLAP (ROLAP))关系对象 (relationship object)关系类型 (relationship type)关系数据库 (relational database)关系数据库管理系统 (RDBMS) (relational database management system (RDBMS))归置 (collocation)规范化规则 (normalization rules)规则 (rule)规则 (rules)滚动 (scroll)国际标准化组织 (ISO) (International Organization for Standardization (ISO))国际电⼯技术委员会 (IEC) (International Electrotechnical Commission (IEC))过程缓存 (procedure cache)过度适应 (overfitting)函数 (function)合并 (merge)合并复制 (merge replication)后代 (descendant)候选键 (candidate key)还原 (restore)还原顺序 (restore sequence)缓存⽼化 (cache aging)幻影 (phantom)恢复 (recover)恢复 (recovery)恢复点 (recovery point)恢复分叉点 (recovery fork point)恢复分⽀ (recovery branch)恢复间隔 (recovery interval)恢复路径 (recovery path)恢复模式 (recovery model)回滚 (roll back)混合 OLAP (HOLAP) (hybrid OLAP (HOLAP))活动语句 (active statement)伙伴 (partner)基本数据类型 (base data type)基表 (base table)基础表 (underlying table)基准备份 (base backup)级别 (level)级别 (rank)级联更新 (cascading update)级联删除 (cascading delete)计划备份 (scheduled backup)计划强制 (plan forcing)计划指南 (plan guide)计算成员 (calculated member)计算传递 (calculation pass)计算公式 (calculation formula)计算机 DSN (machine DSN)。

SQL语句中英文对照

SQL语句中英文对照

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 --定义当前事务数据访问特征--程序化SQLDECLARE --为查询设定游标EXPLAN --为查询描述数据访问计划OPEN --检索查询结果打开一个游标FETCH --检索一行查询结果CLOSE --关闭游标PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句DESCRIBE --描述准备好的查询---局部变量declare @id char(10)--set @id = '10010001'select @id = '10010001'---全局变量---必须以@@开头--IF ELSEdeclare @x int @y int @z intselect @x = 1 @y = 2 @z=3if @x > @yprint 'x > y' --打印字符串'x > y'else if @y > @zprint 'y > z'else print 'z > y'--CASEuse panguupdate employeeset e_wage =casewhen job_level = '1' then e_wage*1.08when job_level = '2' then e_wage*1.07when job_level = '3' then e_wage*1.06else e_wage*1.05end--WHILE CONTINUE BREAKdeclare @x int @y int @c intselect @x = 1 @y=1while @x < 3beginprint @x --打印变量x 的值while @y < 3beginselect @c = 100*@x + @yprint @c --打印变量c 的值select @y = @y + 1endselect @x = @x + 1select @y = 1end--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 valueex:(宿主)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 < 1000and stockindex = 24not stocksex = 'man'stocknumber between 20 and 100stocknumber 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_nameselect stockname , "stocknumber" = count(*) from table_name group by stockname--------- group by 将表按行分组,指定列中有相同的值having count(*) = 2 --------- having选定指定的组select *from table1, table2where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接select stockname from table1union [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 = defaultStockname = nullStocknumber = Stockname + 4***delete***delete from table_name where Stockid = 3truncate 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(/*常用函数*/)***----统计函数----AVG --求平均值COUNT --统计数目MAX --求最大值MIN --求最小值SUM --求和--AVGuse panguselect avg(e_wage) as dept_avgWagefrom employeegroup by dept_id--MAX--求工资最高的员工姓名use panguselect e_namefrom employeewhere 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.1415926535897936RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数----字符串函数----ASCII() --函数返回字符表达式最左端字符的ASCII 码值CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值LOWER() --函数把字符串全部转换为小写UPPER() --函数把字符串全部转换为大写STR() --函数把数值型数据转换为字符型数据LTRIM() --函数把字符串头部的空格去掉RTRIM() --函数把字符串尾部的空格去掉LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0 值DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异--0 两个SOUNDEX 函数返回值的第一个字符不同--1 两个SOUNDEX 函数返回值的第一个字符相同--2 两个SOUNDEX 函数返回值的第一二个字符相同--3 两个SOUNDEX 函数返回值的第一二三个字符相同--4 两个SOUNDEX 函数返回值完全相同QUOTENAME() --函数返回被特定字符括起来的字符串/*select quotename('abc', '{') quotename('abc')运行结果如下----------------------------------{{abc} [abc]*/REPLICATE() --函数返回一个重复character_expression 指定次数的字符串/*select replicate('abc', 3) replicate( 'abc', -2)运行结果如下----------- -----------abcabcabc NULL*/REVERSE() --函数将指定的字符串的字符排列顺序颠倒REPLACE() --函数返回被替换了指定子串的字符串/*select replace('abc123g', '123', 'def')运行结果如下----------- -----------abcdefg*/SPACE() --函数返回一个有指定长度的空白字符串STUFF() --函数用另一子串替换字符串指定位置长度的子串----数据类型转换函数----CAST() 函数语法如下CAST() ( <expression> AS <data_ type>[ length ])CONVERT() 函数语法如下CONVERT() ( <data_ type>[ length ], <expression> [, style])select cast(100+99 as char) convert(varchar(12), getdate())运行结果如下------------------------------ ----------------日期函数----DAY() --函数返回date_expression 中的日期值MONTH() --函数返回date_expression 中的月份值YEAR() --函数返回date_expression 中的年份值DATEADD( <datepart> , <number> , <date>)--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期DATEDIFF( <datepart> , <number> , <date>)--函数返回两个指定日期在datepart 方面的不同之处DATENAME( <datepart> , <date>) --函数以字符串的形式返回日期的指定部分DATEPART( <datepart> , <date>) --函数以整数值的形式返回日期的指定部分GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间----系统函数----APP_NAME() --函数返回当前执行的应用程序的名称COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值COL_LENGTH( <'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值COL_NAME( <table_id>, <column_id>) --函数返回表中指定字段的名称即列名DATALENGTH() --函数返回数据表达式的数据的实际长度DB_ID(['database_name']) --函数返回数据库的编号DB_NAME(database_id) --函数返回数据库的名称HOST_ID() --函数返回服务器端计算机的名称HOST_NAME() --函数返回服务器端计算机的名称IDENTITY( <data_type>[, seed increment]) [AS column_name])--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column列到新表中/*select identity(int, 1, 1) as column_nameinto newtablefrom oldtable*/ISDATE() --函数判断所给定的表达式是否为合理日期ISNULL( <check_expression>, <replacement_value>) --函数将表达式中的NULL 值用指定值替换ISNUMERIC() --函数判断所给定的表达式是否为合理的数值NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值NULLIF( <expression1>, <expression2>)--NULLIF 函数在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1 的值--------------------------------------------------------------------------------。

PLSQL界面中英文对照

PLSQL界面中英文对照

PL/SQL界面中英文对照File:文件New 新建Program Window 程序窗口Blank 空白Function 函数Java source Java源代码Package 包Package body 主体包Package specification 包说明Procedure 过程Trigger 触发器Type 类型Type body 类型主体Type specification 类型说明Test Window 测试窗口SQL Window SQL窗口Report Window 报告窗口Command Window 命令窗口Explain Plan Window 解释计划窗口解释计划窗口Diagram Window 图标窗口View 视图Materialized view 物化窗口物化窗口 Table 表Sequence 序列序列Synonym 同义词同义词Library 库Directory 目录目录Job 作业作业Queue 队列队列Queue table 队列表队列表User 用户用户Role 角色角色Profile 概要文件概要文件Database link 数据库连接数据库连接 Open 打开打开Program File 程序文件程序文件Test Script 测试脚本测试脚本SQL Script SQL脚本脚本Report File 报告文件报告文件Command File 命令文件命令文件Diagram File 图标文件图标文件 Reopen 重新打开重新打开Save 保存保存Save as 另存为另存为Save all 全部保存全部保存E-mail 电子邮件电子邮件Close 关闭关闭Close All 全部关闭全部关闭Print 打印打印Print Setup 打印设置打印设置Page Setup 页面设置页面设置New Instance 新建实例新建实例Authorization 授权授权Exit 退出退出VCS: Open Project 打开工程打开工程Close Projcet 关闭工程关闭工程Check Out 签出签出Check in 签入签入Undo Check Out 撤销签出撤销签出撤销签出Get 获取获取Add 添加添加Remove 移除移除Properties 属性属性Differences 差异差异History 历史历史Check Out Files 签出文件签出文件签出文件Check In Files 签入文件签入文件签入文件Undo Check Out Files 撤销签出文件撤销签出文件Get Files 获取文件获取文件Add Files 添加文件添加文件Run Version Control System 运行运行Version Control System Preferences 首选项首选项Available Version Control Systems 可用的版本控制系统可用的版本控制系统可用的版本控制系统Show Comment for 显示注释显示注释显示注释Show Options for 显示选项显示选项显示选项Reopen Project on refresh 新时重新打开工程刷新时重新打开工程Query file status on refresh 刷新时查询文件状态刷新时查询文件状态Allow version control over DB objects Add Spec and Body as a Single file Automatically open last used project 自动打开最近使用过的工程工程Project:工程工程New 新建新建Open 打开打开Save 保存保存Save As 另存为另存为Save All 全部保存全部保存Close 关闭关闭Add to Project 添加到工程添加到工程添加到工程 Remove from Project 从工程中移除从工程中移除从工程中移除 Project Items 工程项目工程项目Make 生成生成Build 建立建立Find 查找查找To-Do Items 任务项目任务项目Options 选项选项Edit:编辑编辑Undo 撤销撤销Redo 重做重做PL/SQL Beautifier PL/SQL 美化器美化器PL/SQL Beautifier Options PL/SQL Beautifier Options PL/SQL PL/SQL 美化器选项美化器选项 Cut 剪切剪切Copy 复制复制Paste 粘贴粘贴Append 附加附加Clear 清除清除Select All 全选全选Recall Statement 重新调用语句重新调用语句Special Copy 专用复制专用复制Selection 选择选择Indent 缩进缩进Unindent 撤销缩进撤销缩进Uppercase 大写大写Lowercase 小写小写Comment 注释注释Uncomment 取消注释取消注释Apply Syntax Case 英语语法大小写英语语法大小写 Sort 排序排序Color Mark 色标色标To-Do Items 任务选项任务选项Find&Replace 查找查找Find Next 重复上次查找重复上次查找Find Previous 之前找到的之前找到的Replace Next 替换下一个替换下一个Search Bar 搜索栏搜索栏Find Matches 查找拼配查找拼配Full Screen 全屏全屏Show Special Characters 显示特殊字符显示特殊字符显示特殊字符Code Folding 代码折叠代码折叠Set Bookmark 设置书签设置书签设置书签Go to Bookmark 转到书签转到书签 Bookmark List 书签列表书签列表 Go to Line 转到行转到行Next Tab Page 下一标签页下一标签页 Previous Tab Page 上一标签页一标签页Session:回话回话Log on 登录登录Log off 注销注销Set Main Connection Imported Fixed Users Imported History Recent Execute 执行执行Break 中断中断Kill 关闭关闭Commit 提交提交Rollback 回滚回滚SQL Trace SQL跟踪跟踪 Debug:调试调试Toggle Breakpoint 切换断点切换断点 Modify Breakpoint 更改断点更改断点 Start 开始开始Run 运行运行Step Into 单步进入单步进入Step Over 单步跳过单步跳过Step Out 单步退出单步退出Run to Exception 运行到异常运行到异常运行到异常Set V ariable 设置变量设置变量Tools:工具工具Preferences 首选项首选项Configure Plug-Ins 配置插件配置插件Configure Tools 配置工具配置工具Configure Documents 配置文档配置文档配置文档Configure Reports 配置报告配置报告Plsqldoc Marco 宏Connections 连接连接Define Connections 定义连接定义连接Object Browser 浏览器浏览器Object Browser Folders 浏览器文件夹浏览器文件夹 Object Browser Filters 浏览器过滤器浏览器过滤器 File Browser 文件浏览文件浏览File Browser Locations 文件浏览位置文件浏览位置 Template List 模板列表模板列表Window List 窗口列表窗口列表Toolbar 工具栏工具栏Explain Plan 解释计划解释计划Code Assistant 代码助手码助手Code Contents 代码目录码目录Show Compiler Hints 显示编译器提示显示编译器提示 Query Builder 查询设计器查询设计器查询设计器Find Database Objects 查找数据库对象查找数据库对象 Compile Invalid Objects 编译无效对象编译无效对象 Export User Object 到处用户对象到处用户对象 Compare User Objects 比较用户对象比较用户对象 Event Monitor 事件监视器事件监视器事件监视器Sessions 回话回话Test Manager 测试管理器测试管理器DBMS Scheduler DBMS调度程序调度程序 Export Tables 导出表导出表Import Tables 引入表引入表Compare Table Date 比较表数据比较表数据Text Importer 文本导入器文本导入器ODBC Importer ODBC导入器导入器Data Generator 数据生成器数据生成器 Deployment:部署部署Macro:宏Documents:文档文档Reports:报告报告Window:窗口窗口Help:帮助帮助Preferences :OracleConnection Session Mode 会话方式会话方式Multi session 多路会话多路会话Dual session 双路会话双路会话Single session 单路会话单路会话单路会话Logoff with open transaction 注销(有打开的事务)注销(有打开的事务)Check connection 检查链接检查链接检查链接 Oracle Home(empty is autodetect) Oracle Home(empty is autodetect) Oracle Oracle 主目录名(自动检测为空)检测为空)OCI library (empty is autodetect) Oracle 库(自动检测为空)Force OCI7 mode on OCI8 在OCI8上强制使用OCI7 Multiple Connections 多路连接多路连接多路连接Allow multiple connection 允许多路连接允许多路连接Store recent history 保存最近历史保存最近历史 Store with password 带密码保存带密码保存Options Allow editing of database source 允许编辑数据路远允许编辑数据路远 Ask to save edited database source 询问师傅保存刚变异过的数据库源的数据库源Allow compilation of read-only source files 允许编译只读源文件文件Confirm commit & rollback 确认提交与回滚确认提交与回滚确认提交与回滚Use DBA Views if available 若可以用,则使用DBA查看查看 Automatic statistics 自动统计自动统计Unicode enabled 允许Unicode Check for client & server character set mismatch 检查哭户机与服务器字符集是否匹配户机与服务器字符集是否匹配Add column alias list for View DDL 查看DDL的地址栏别名列表名列表Compiler PL/SQL Optimize level 优化等级优化等级PL/SQL Code type 编码类型编码类型PL/Scope identifiers 标识符标识符PL/SQL Conditional Compilation Flags 条件编译标志条件编译标志 PL/SQL Warnings 警告警告警告PL/SQL Substitution Variables 替换变量替换变量Debugger 调试器调试器Show variable values in a popup 在弹出式菜单里显示变量值Step over SYS objects 单步跳过SYS对象对象Update watches after each step 在每步之前更新监视器在每步之前更新监视器 Update call stack after each step 在每步之后更新堆栈在每步之后更新堆栈Add debug information when compiling 编译时添加调试信息NEVER add debug info for connections (user@db) 从来不连数据库)接添加调试信息(用户@数据库)ALWAYS add debug info for connections (user@db) 总是数据库)为连接添加调试信息(用户@数据库)NEVER add debug info for objects ([owner,] name) 从不名称)为对象添加调试信息([所有者.]名称)Output 输出输出Trace 跟踪跟踪Available Columns可用按钮Selected Columns 以选按钮时间种类 Comment注释Event kind 时间种类时间序列 Event time事件时间Event sequence 时间序列异常 Unit name单元名Exception 异常过程行 Unit line text 单元行文本Proc line 过程行Proc name 过程名Proc params过程参数Proc type 过程类型Unit line 单元行Unit type 单元类型单元类型Profiler 概览图概览图User Interface 用户界面用户界面用户界面Options 选项选项Autosave username 自动保存用户名自动保存用户名Autosave desktop 自动保存桌面自动保存桌面Use internal HTML viewer 使用内置HTML 阅览器阅览器HTML help window:”stay on top ” HTML 帮助窗口“固顶”Use multi-row tabs 使用多行制表符使用多行制表符 Show complete file path in window titles 在窗口标题里面实现完成的文件路径现完成的文件路径Use projects 使用工程使用工程 Position Position messageboxes messageboxes messageboxes near near near mouse mouse mouse pointer pointer 定位信息框靠近鼠标指针鼠标指针Show Show file file file dialogs dialogs dialogs with with with details details details view view 显示带详细内容的文件对话框对话框Notify end of long running queries 通知结束长时间运行的查询Delay(s)延迟延迟 Sound file 声音文件声音文件 DSA Dialogs : DSA 对话框对话框 Shows a list of dialogs that have the “Don Don’’t show this message again” option checked. You can delete lines for the messages you want you enable. 显示含有“不再显示这个信息”的对话框,你可以删除用于你要启用的信息行。

SQL数据库语句大全大全(完全整理版)

SQL数据库语句大全大全(完全整理版)

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 --定义当前事务数据访问特征--程序化SQLDECLARE --为查询设定游标EXPLAN --为查询描述数据访问计划OPEN --检索查询结果打开一个游标FETCH --检索一行查询结果CLOSE --关闭游标PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句DESCRIBE --描述准备好的查询---局部变量declare @id char(10)--set @id = '10010001'select @id = '10010001'---全局变量---必须以@@开头--IF ELSEdeclare @x int @y int @z intselect @x = 1 @y = 2 @z=3if @x > @yprint 'x > y' --打印字符串'x > y'else if @y > @zprint 'y > z'else print 'z > y'--CASEuse panguupdate employeeset e_wage =casewhen 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.05end--WHILE CONTINUE BREAK declare @x int @y int @c intselect @x = 1 @y=1while @x < 3beginprint @x --打印变量x 的值while @y < 3beginselect @c = 100*@x + @yprint @c --打印变量c 的值select @y = @y + 1endselect @x = @x + 1select @y = 1end--WAITFOR--例等待1 小时2 分零3 秒后才执行SELECT 语句w aitfor 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 < 1000and stockindex = 24not stock*** = 'man'stocknumber between 20 and 100stocknumber 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_nameselect stockname , "stocknumber" = count(*) from table_name group by stockname--------- group by 将表按行分组,指定列中有相同的值having count(*) = 2 --------- having选定指定的组select *from table1, table2where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接select stockname from table1union [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 = defaultStockname = nullStocknumber = Stockname + 4***delete***delete from table_name where Stockid = 3truncate 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(/*常用函数*/)***----统计函数----AVG --求平均值COUNT --统计数目MAX --求最大值MIN --求最小值SUM --求和--AVGuse panguselect avg(e_wage) as dept_avgWagefrom employeegroup by dept_id--MAX--求工资最高的员工姓名use panguselect e_namefrom employeewhere 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.1415926535897936RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数----字符串函数----ASCII() --函数返回字符表达式最左端字符的ASCII 码值CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值LOWER() --函数把字符串全部转换为小写UPPER() --函数把字符串全部转换为大写STR() --函数把数值型数据转换为字符型数据LTRIM() --函数把字符串头部的空格去掉RTRIM() --函数把字符串尾部的空格去掉LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0 值DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异--0 两个SOUNDEX 函数返回值的第一个字符不同--1 两个SOUNDEX 函数返回值的第一个字符相同--2 两个SOUNDEX 函数返回值的第一二个字符相同--3 两个SOUNDEX 函数返回值的第一二三个字符相同--4 两个SOUNDEX 函数返回值完全相同QUOTENAME() --函数返回被特定字符括起来的字符串/*select quotename('abc', '{') quotename('abc')运行结果如下----------------------------------{{abc} [abc]*/REPLICATE() --函数返回一个重复character_expression 指定次数的字符串/*select replicate('abc', 3) replicate( 'abc', -2)运行结果如下----------- -----------abcabcabc NULL*/REVERSE() --函数将指定的字符串的字符排列顺序颠倒REPLACE() --函数返回被替换了指定子串的字符串/*select replace('abc123g', '123', 'def')运行结果如下----------- -----------abcdefg*/SPACE() --函数返回一个有指定长度的空白字符串STUFF() --函数用另一子串替换字符串指定位置长度的子串----数据类型转换函数----CAST() 函数语法如下CAST() (<expression> AS <data_ type>[ length ])CONVERT() 函数语法如下CONVERT() (<data_ type>[ length ], <expression> [, style])select cast(100+99 as char) convert(varchar(12), getdate())运行结果如下------------------------------ ------------199 Jan 15 2000----日期函数----DAY() --函数返回date_expression 中的日期值MONTH() --函数返回date_expression 中的月份值YEAR() --函数返回date_expression 中的年份值DATEADD(<datepart> ,<number> ,<date>)--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期DATEDIFF(<datepart> ,<number> ,<date>)--函数返回两个指定日期在datepart 方面的不同之处DATENAME(<datepart> , <date>) --函数以字符串的形式返回日期的指定部分DATEPART(<datepart> , <date>) --函数以整数值的形式返回日期的指定部分GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间----系统函数----APP_NAME() --函数返回当前执行的应用程序的名称COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值COL_NAME(<table_id>, <column_id>) --函数返回表中指定字段的名称即列名DATALENGTH() --函数返回数据表达式的数据的实际长度DB_ID(['database_name']) --函数返回数据库的编号DB_NAME(database_id) --函数返回数据库的名称HOST_ID() --函数返回服务器端计算机的名称HOST_NAME() --函数返回服务器端计算机的名称IDENTITY(<data_type>[, seed increment]) [AS column_name])--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column列到新表中/*select identity(int, 1, 1) as column_nameinto newtablefrom oldtable*/ISDATE() --函数判断所给定的表达式是否为合理日期ISNULL(<check_expression>, <replacement_value>) --函数将表达式中的NULL 值用指定值替换ISNUMERIC() --函数判断所给定的表达式是否为合理的数值NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值NULLIF(<expression1>, <expression2>)--NULLIF 函数在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1 的值sql中的保留字action add aggregate allalter after and asasc avg avg_row_length auto_incrementbetween bigint bit binaryblob bool both bycascade case char characterchange check checksum columncolumns comment constraint createcross current_date current_time current_timestampdata database databases datedatetime day day_hour day_minuteday_second dayofmonth dayofweek dayofyeardec decimal default delayeddelay_key_write delete desc describedistinct distinctrow double dropend else escape escapedenclosed enum explain existsfields file first floatfloat4 float8 flush foreignfrom for full functionglobal grant grants grouphaving heap high_priority hourhour_minute hour_second hosts identifiedignore in index infileinner insert insert_id intinteger interval int1 int2int3 int4 int8 intoif is isam joinkey keys kill last_insert_idleading left length likelines limit load locallock logs long longbloblongtext low_priority max max_rowsmatch mediumblob mediumtext mediumintmiddleint min_rows minute minute_secondmodify month monthname myisamnatural numeric no notnull on optimize optionoptionally or order outeroutfile pack_keys partial passwordprecision primary procedure processprocesslist privileges read realreferences reload regexp renamereplace restrict returns revokerlike row rows secondselect set show shutdownsmallint soname sql_big_tables sql_big_selectssql_low_priority_updates sql_log_off sql_log_update sql_select_limit sql_small_result sql_big_result sql_warnings straight_joinstarting status string tabletables temporary terminated textthen time timestamp tinyblobtinytext tinyint trailing totype use using uniqueunlock unsigned update usagevalues varchar variables varyingvarbinary with write whenwhere year year_month zerofill查看全文常用SQL命令和ASP编程在进行数据库操作时,无非就是添加、删除、修改,这得设计到一些常用的SQL 语句,如下:SQL常用命令使用方法:(1) 数据记录筛选:sql="select * from 数据表where 字段名=字段值order by 字段名[desc]"sql="select * from 数据表where 字段名like %字段值% order by 字段名[desc]"sql="select top 10 * from 数据表where 字段名order by 字段名[desc]"sql="select * from 数据表where 字段名in (值1,值2,值3)"sql="select * from 数据表where 字段名between 值1 and 值2"(2) 更新数据记录:sql="update 数据表set 字段名=字段值where 条件表达式"sql="update 数据表set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"(3) 删除数据记录:sql="delete from 数据表where 条件表达式"sql="delete from 数据表" (将数据表所有记录删除)(4) 添加数据记录:sql="insert into 数据表(字段1,字段2,字段3 …) valuess (值1,值2,值3 …)"sql="insert into 目标数据表select * from 源数据表" (把源数据表的记录添加到目标数据表)(5) 数据记录统计函数:AVG(字段名) 得出一个表格栏平均值COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计MAX(字段名) 取得一个表格栏最大的值MIN(字段名) 取得一个表格栏最小的值SUM(字段名) 把数据栏的值相加引用以上函数的方法:sql="select sum(字段名) as 别名from 数据表where 条件表达式"set rs=conn.excute(sql)用rs("别名") 获取统的计值,其它函数运用同上。

超全SQL语句 ,含详细备注示例

超全SQL语句 ,含详细备注示例

从命令行连接到SQLPLUS:Sqlplus sys/密码as sysdbaAlter user scott account unlock;用户已更改。

conn scott/tiger已连接。

SQL单条语句:SQL>desc emp(表名); 描述这张表EMPNO:雇员编号COMM:津贴DNAME:部门名称LOC:部门所在地desc salgrade:描述薪水等级select语句:select * from emp:把这个表中的内容全部取出来select ename, sal * 12,from emp;取出雇员的年薪select 2 * 3 from emp;Desc dual;(dual 代表输出一个字段)select * from dual;select 2 * 3 from dual;只出一个结果select sysdate from dual;取出系统时间select ename, sal * 12 anunal_sal(或者”anunal sal”,加引号是保持原来的格式输出,它代表年薪名) from emp;select ename, comm from emp;输出每个人的津贴select ename, sal * 12 + comm from emp;年薪+津贴select ename || salfrom emp;|| 代表字符连接符select ename || ‘abc’ from emp;’’是把字符串内容加上select ename || ‘ abc‘‘def’ from emp;中间会打印出一个单引号Where是过滤语句:select * from emp where deptno = 10;取出部门编号为10的成员select * from emp where ename = ‘Clark’;=是等值判断select ename, sal from emp where sal > 1500;取出薪水大于1500的成员select ename, sal, deptno from where deptno < >10;取出部门编号不等于10 的部门成员和薪水select ename, sal from emp where ename > ‘cba’;字符串比较select ename,sal from emp where sal between 800 and 1500(where sal >= 800 and sl <= 1500);取出薪水在800到1500之间的成员select ename, sal, comm from emp where comm is null;取出津贴为空的成员select ename, sal, comm from emp where comm is not null;取出津贴不为空的成员select ename, sal, comm from emp where sal in <800, 1500, 2000>;取出薪水等于800,1500,2000的成员select ename, sal, comm from emp where ename in <’sMITH’, ‘KING’, ‘ABC’>;取出这三个人select ename, sa, hiredate from emp where hiredate > ‘20-2月-81’(‘20-2-1981’);取出入职时间为1981年2月20号的成员select ename, sal from emp where deptno = 10 and sal > 1000;select ename, sal from emp where deptno =10 or sal > 1000;注意两者结果不一样select ename from emp where ename like ‘%ALL%’;取出其中带有ALL字符串的成员名select ename from emp where ename like ‘_A%’;取出第二个字符是A的成员select ename from emp where ename like ‘%\%%’(‘%$%%’)(where ename like ‘%$%%’ escape ‘$’);告诉它这是转义字符数据排序:desc是降序、asc是升序(不写的话默认是升序)select * from dept order by deptno desc;按照deptno降序排列select empno, ename from emp order by empno asc;按照empno;升序排列//select empno , ename from emp where deptno < > 10 order by sal asc;select ename, sal * 12 annual_sal from emp where ename not like ‘_A%’ and sal > 800 order by sal desc;取出名字中第二个字母不是A且薪水大于800 的成员按降序排列sQL中的函数:select lower <ename> from emp;取出的名字都是小写select ename from emp where lower <ename> like ‘_a%’;先小写名字再取出第二个字母是a的成员select ename from emp where like ‘_a%’ or ename like ‘_A%’;select substr <ename, 2,3> from emp;从第二个开始截取三个名字select chr <65> from dual;把AsCII码转为字符select ascii <’A’> from dual;把A转为AsCII码select round <23.652> from dual;四舍五入输出为24(默认四舍五入到个位)select round <23.652, 2> from dual;保留两位小数,输出23.65select round <23.652, -1> from dual;四舍五入到十位,输出为20select to_char <sal, ‘$99,999.9999’> from emp;把sal转为固定格式,小数点后四位,小数点前五位(小数点后的必写,小数点前的位数不够可以省略)select to_char <sal, ‘L99,999.9999’> from emp;L为转为本地货币符select to_char <sal, ‘L00,000.0000’> from emp;注意:即使小数点前位数不够,也得把0补上select to_char <hiredate, ‘YYYY-MM-DD HH:MI:ss’> from emp;把入职时间改为固定格式select to_char <hiredate, ‘YYYY-MM-DD HH24:MI:ss’> from emp;HH为12进制,HH24为24进制select to_char <sysdate, ‘YYYY-MM-DD HH24:MI:ss’> from dual;select ename, hiredate from emp where hiredate > to_char <’1981-2-20 12:34:56’, ‘YYYY-MM-DD HH24:MI:ss’>;select sal from emp where sal > to_number <’$1,250.00’,’$9,999.00’>;取出薪水大于1250的select ename ,sal * 12 + nvl <comm,0> from emp;如果comm不存在则以0计算,nvl 就是为了避免空值select count <ename> from emp;select count <distinct deptno> from emp;Group by 分组语句:select avg <sal> from emp group by deptno;select deptno, avg <sal> from emp group by deptno;上述两项都是求部门的平均薪水select deptno,job max <sal> from emp group by deptno, job;select ename from emp where sal = < select max <sal>from emp>;取出薪水最高的那个人名select avg <sal>, deptno from emp group by deptno having avg<sal> > 2000;取出平均薪水大于2000的那些组(不能用where,因为它只控制单行输出,having是对分组进行限制)总结语句:select avg<sal> from emp where sal > 1200 group by deptno having avg<sal> > 1500 order by avg<sal> desc;子查询:Select ename, sal from emp where sal = <select max<sal> from emp>; select嵌套Select ename,sal from emp where sal > <select avg<sal> from emp>;//Select ename, sal, deptno from emp where sal in <select max<sal> from emp grup by emptno>;注意这句话有问题表连接:Select ename,sal from empjoin <select max <sal>, deptno from emp group by deptno> tOn <emp.sal = t.max_sal and emp.deptno = t.deptno>;Jion是连接的意思on里面是连接条件自连接:Select e1.ename, e2.ename from emp e1,emp e2 where e1.mgr = e2.empno;老版写法Select e1.ename,e2.ename from emp e1 join emp e2 on <e1.mgr = e2.empno>;新版写法Select e1.ename,e2.ename from emp e1 left join emp e2 on <e1.mgr =e2.empno>;左外连接:注意left的区别,把左边多余的拿出来等值连接:Select ename,dname from emp, dept where emp.deptno = dept.deptno;老版写法Select ensme,dname from emp join dept on <emp.deptno = dept.deptno>;新版写法Select ensme,dname from emp join dept using <deptno>; 和上面的写法一样,但不推荐使用using的用法非等值连接:Select ename, grade from emp e (e代表的是表的别名) join salgrade s on <e.sal between s.losal between and s.hisal>;三个表的连接写法:Select ename, dname, grade from emp e join dept d on <e.deptno = d.deptno> join salgrade s on <e.sal between s.losal and s.hisal> where ename not like ‘_A%’;求部门中哪些人的薪水最高:Select ename ,sal from emp join <select max<sal> max_sal, deptno from emp group by deptno> t on <emp.sal = t.max_sal and emp.deptno = t.deptno>;求部门平均薪水的等级:Select deptno, avg<sal>, grade from <select deptno, avg<sal> avg_sal from empgroup by deptno> t join salgrade s on <t.avg_sal between s.losal and s.hisal>;求出所有部门的每个人的薪水等级:Select deptno, ename,grade from emp join salgrade s on <emp.sal between s.losal and s.hisal>;求部门平均薪水的等级:Select deptno, avg<grade> from <Select deptno, ename,grade from emp join salgrade s on <emp.sal between s.losal and s.hisal>> t group by deptno;雇员中哪些人是经理人:Select ename from emp where empno in <select mgr from emp>;Select ename from emp where empno in <select distinct mgr from emp>;有效率的写法不准用组函数,求薪水的最高值(面试题):提示:用自连接select distinct sal from emp where sal not in <select distinct (distinct 是去掉重复的项) e1.sal from emp e1.job emp e2 on < e1.sal < e2.sal > >;求平均薪水最高的部门编号:Select deptno, avg_sal from<select avg<sal> avg_sal, deptno from emp group by deptno>where avg_sal =<select max<avg_sal> from<select avg<sal> avg_sal,deptno from emp group by deptno> >;另一种写法:Select deptno, avg_sal from<select avg<sal> avg_sal, deptno from emp group by deptno>where avg_sal =<select max<avg<sal>> from emp group by deptno >;求平均薪水最高的部门称号:Select dname from dept where deptno =<select deptno from<select avg<sal> avg_sal, deptno from emp group by deptno> where avg_sal =<select max<avg_sal> from<select avg<sal> avg_sal,deptno from emp group by deptno> >>;求平均薪水的等级最低的部门名称:Select dname, t1.deptno, grade, avg_sal from(Select deptno, grade, avg_sal from(Select deptno, avg<sal> avg_sal from emp group by deptno) tJoin salgrade s on (t.avg_sal between s.losal and s.hisal)) t1Join dept on (t1.deptno = dept.deptno)Where t1.grade =(Select min(grade) from(Select deptno, grade, avg_sal from(select deptno, avg(sal) avg_sal from emp group by deptno) t Join salgrade s on (t.avg_sal between s.losal and s.hisal)))求比普通员工最高薪水还要高的经理名称:select ename from empWhere empno in <select distinct mgr from emp where mgr is not null> and sal > select max<sal> from empwhere empno not in<select distinct mgr from emp where mgr is not null>求部门经理人中平均薪水最低的部门名称?求薪水最高的前5名雇员?//Select ename,sal from (select ename,sal from emp where empno in (select sal, //deptno from emp order by sal desc)) where rownum <= 5;求薪水最高的第六到第十名雇员?求最后入职的5名雇员?1、查找选了‘黎明’老师课的的姓名2、查有2门课以上不及格的学生姓名和平均成绩select sname,avgsalfrom (select sno,avg(scgrade) avgsalfrom (select s.sno,sname,cno,scgradefrom sc,swhere scgrade<60 and s.sno=sc.sno)group by snohaving count(*)>=2)table1, swhere s.sno=table1.sno3、查选了1和选了2的学生的姓名1、select snamefrom swhere sno not in(select snofrom c,scwhere o=oand c.cteacher='黎明')2、select sname,avgsalfrom (select sno,avg(scgrade) avgsalfrom (select s.sno,sname,cno,scgradefrom sc,swhere scgrade<60 and s.sno=sc.sno )group by snohaving count(*)>=2)table1, swhere s.sno=table1.sno3、select snamefrom s,scwhere s.sno=sc.snoand cno='1'intersectselect snamefrom s,scwhere s.sno=sc.snoand cno='2'1).求部门中哪些人的薪水最高select ename,emp.deptno,salfrom(select max(sal) maxsalary,deptnofrom empgroup by deptno)table1,empwhere emp.sal=table1.maxsalary2).求部门平均薪水的等级select deptno,gradefrom(select avg(sal) avgsal,deptnofrom empgroup by deptno)table1,salgradewhere avgsal between losal and hisal3).雇员中有哪些人是经理人select *from empwhere job='MANAGER'4).不准用组函数,求薪水的最高值(面试题)select salfrom empwhere sal>=all(select salfrom emp)5).求平均薪水最高的部门的部门的编号select deptno, avg(sal) maxsalfrom empgroup by deptnohaving avg(sal)>=all(select avg(sal) from emp group by deptno)6).求平均薪水最高的部门的部门名称select dnamefrom(select deptno, avg(sal) maxsalfrom empgroup by deptnohaving avg(sal)>=all(select avg(sal) from emp group by deptno))table1,deptwhere table1.deptno=dept.deptno7).求平均薪水等级最低的部门名称select dnamefrom deptwhere deptno=(select deptnofrom(select deptno,gradefrom(select avg(sal) avgsal,deptnofrom empgroup by deptno)table1,salgradewhere avgsal between losal and hisal)where grade<=all(select gradefrom(select deptno,gradefrom(select avg(sal) avgsal,deptnofrom empgroup by deptno)table1,salgradewhere avgsal between losal and hisal)) )8).求比普通员工的最高薪水还要高的经理人的名称select enamefrom empwhere job='MANAGER' and sal>=(select max(sal)from emp where job='CLERK')9).求薪水最高的前5名雇员select *from(select emp.*from emporder by sal desc)where rownum<=510.求薪水最高的第6到10名雇员(重点掌握)select *from(select table1.*,rownum rnfrom(select emp.*from emporder by sal desc)table1)where rn<=10 and rn>5比较效率:1、select * from emp where deptno = 10 and ename like ‘%A%’;(理论上效率高,如同短路语句)2、Select * from emp where ename like ‘%A%’ and deptno = 10;Create table stu(Id number(6),Name varchar2(20) constraint stu_name_nn not null,Sex number(1),Age number(3),Sdate date,Grade number(2) default 1,Class number(4),Email varchar2(50),Constraint stu_class_fk foreign key(class) references class(id),//定义外键Constraint stu_id_pk primary key(id),//定义主键Constraint stu_name_email_uni unique(email,name) //email和name必须相同)/Create table class(Id number(4) primary key,Name varchar2(20)not null)Alter table stu add(addr varchar2(100));(在表中加入一个字段)alter table stu modify(addr varchar2(50));(修改)Alter table stu drop(addr);(删除表中的字段)Insert into stu(id,name,email) values (1,’’a,’a’);Alter table stu add constraint stu_class_fk foreign key (class) references class(id);(加约束条件)Alter table stu drop constraint stu_class_fk;(删除约束条件)Select table_name from user_tables;Select conatraint_name from user_constraints;Select view_name from user_views;Select constraint_name,table_name from user_constraints;DML(数据操纵语言)语句:select、insert、delete、update(修改)Distinct:消除重复行Insert into dept values (50,’game’,’bj’);(已插入一行)Rollback;(回退已完成:回到没导入之前的状态)Create table emp2 as select * from emp;(备份一个表,内容和emp一模一样)Insert into dept2 values (50,’game’,’bj’);Insert into dept2(deptno,dname) values (60,’game2’);(增加指定的值)Insert into dept2 select * from dept;(把dept的值全部插入dept2中)Update emp2 set sal = sal*2,ename = ename || ‘-’ where deptno = 10;Select ename,sal from emp2 where deptno = 10;Update emp2 set sal = sal*2;Commit;(提交完成)此时,rollback已不起作用了,不会回到原始状态Delete from emp2;(所有都删掉)Delete from dept2 where deptno = 10;Rollback;DDL语句(数据定义语言):Create table t (a varchar2(10)); (创建表)Drop table t;(删除表)Alter user scott account unlock;(修改)DCL(数据控制语言)语句:Grant授权语句: grant [权限] on [要授予权限的数据库对象] to [使用者账户名称] with [授权选项]Revoke: deny [权限] on [要授予权限的数据库对象] to [使用者账户名称]常用的权限分配:grant授权:于为用户分配权限或角色GRANT CONNECT TO MARTIN;CONNECT角色允许用户连接至数据库,并创建数据库对象GRANT RESOURCE TO MARTIN;RESOURCE角色允许用户使用数据库中的存储空间GRANT CREATE SEQUENCE TO MARTIN;此系统权限允许用户在当前模式中创建序列,此权限包含在CONNECT角色中授予用户MARTIN 操作TEST表对象的权限允许用户查询TEST 表的记录:GRANT SELECT ON TEST TO MARTIN;允许用户更新TEST 表中的记录:GRANT UPDATE ON TEST TO MARTIN;允许用户插入、删除、更新和查询TEST 表中的记录:GRANT ALL ON TEST TO MARTIN;用新建用户来进行链接,发现权限不足。

sql命令大全

sql命令大全

sql命令大全(oracle)转载1、set verify on/off 控制输出行不显示old和new2、set define ‘&’定义变量字符3、set echo off/on 禁止或者启用sql脚本中的sql语句和命令4、accept varname vartype format a../$... prompt ‘....’;undefine varname5、变量中被定义为&1,&2意味者第一个变量和第二个变量6、ttitle和btitle 代表的页眉和页脚7、break on 和compute 用于为列添加小计8、内联视图select colnum from (select colum from tablename where condition);9、union:两个表不重复的所有行,intersect:两个表共有的行,minus:第一个表有而第二个表没有的行。

10、translate(x,from_string,to_string)用作密码文件的形成。

11、decode(value,search_value,result,default_value)条件查询,可以实现if的功能或者case的功能。

12、casewhen condition then result1when condition then result2····when condition then resultNelse default_resultend 注意case一般存在from前面13、使用connect by和start with可以实现层次化查询,可以通过lpad命令实现目录树的功能,lpad(x,num)它指用x字符在左边填充num个。

14、1、rollup可以为每个分组返回小计记录,cube,可以返回每一个列组合的小计记录,同时在末尾加上总计记录,他们都是group by的一种扩展。

SQL命令全集

SQL命令全集

SQL命令全集一、SQL命令介绍SQL是Structured Quevy Language(结构化查询语言)的缩写。

SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。

在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。

SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。

二、SQL数据库数据体系结构SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。

在SQL中,关系模式(模式)称为“基本表”(base table);存储模式(内模式)称为“存储文件”(stored file);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。

名称对称如^00100009a^:三、SQL语言的组成在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的组成:1.一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。

2.一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。

3.一个表或者是一个基本表或者是一个视图。

基本表是实际存列名为用户自定义的易于理解的名称,列名中不能使用空格;数据类型为上面所介绍的几种标准数据类型;[NOT NULL/NULL]指出该列是否允许存放空值,SQL语言支持空值的概念,所谓空值是“不知道”或“无意义”的值,值得注意的是数据“0”和空格都不是空值,系统一般默认允许为空值,所以当不允许为空值时,必须明确使用NOT NULL;[,UNIQUE]将列按照其规定的顺序进行排列,如不指定排列顺序,则按列的定义顺序排列;[PRIMARY KEY]用于指定表的主键(即关系中的主属性),实体完整性约束条件规定:主键必须是唯一的,非空的;[,FOREIGN KEY (列名[,列名]......) REFERENCE<表名>(列名[,列名]......)]是用于指定外键参照完整性约束条件,FOREIGN KEY指定相关列为外键,其参照对象为另外一个表的指定列,即使用REFERENCE引入的外表中的列,当不指定外表列名时,系统将默认其列名与参照键的列名相同,要注意的是:使用外键时必须使用参照,另外数据的外键参照完整性约束条件规定:外键的值要么与相对应的主键相同,要么为空值(具体由实现系统不同而异)[,CHECK]用于使用指定条件对存入表中的数据进行检查,以确定其合法性,提高数据的安全性。

SQL的基本查询语句大全

SQL的基本查询语句大全

SQL(结构化查询语言)是用于管理关系数据库系统的标准语言。

以下是一些基本的SQL查询语句的示例:1. **选择所有列**```sqlSELECT * FROM 表名;```2. **选择特定列**```sqlSELECT 列名1, 列名2 FROM 表名;```3. **添加条件**```sqlSELECT * FROM 表名WHERE 条件;```4. **排序结果**```sqlSELECT * FROM 表名ORDER BY 列名ASC/DESC;```5. **插入数据**```sqlINSERT INTO 表名(列名1, 列名2, ...) VALUES (值1, 值2, ...);```6. **更新数据**```sqlUPDATE 表名SET 列名1 = 值1, 列名2 = 值2, ... WHERE 条件; ```7. **删除数据**```sqlDELETE FROM 表名WHERE 条件;```8. **连接表**```sqlSELECT * FROM 表名1 JOIN 表名2 ON 表名1.列名= 表名2.列名; ```9. **聚合函数**```sqlSELECT COUNT(列名) FROM 表名WHERE 条件; --计数SELECT SUM(列名) FROM 表名WHERE 条件; --求和SELECT AVG(列名) FROM 表名WHERE 条件; --平均值SELECT MAX(列名) FROM 表名WHERE 条件; --最大值SELECT MIN(列名) FROM 表名WHERE 条件; --最小值```10. **分组和筛选**```sqlSELECT 列名, COUNT(*) FROM 表名GROUP BY 列名HAVING COUNT(*) > 值; --分组和筛选聚合数据```11. **子查询**```sqlSELECT * FROM 表名WHERE 列名IN (SELECT 列名FROM 表名WHERE 条件); -- IN 子查询SELECT * FROM 表名WHERE 列名= (SELECT 列名FROM 表名WHERE 条件); -- = 子查询(通常用于单行子查询)```12. **插入多行数据** (在某些数据库中可能不支持)```sqlINSERT INTO 表名(列名1, 列名2, ...) VALUES (值1a, 值2a, ...), (值1b, 值2b, ...), ...;```请注意,上述SQL语句仅为基本示例,实际使用时可能需要根据具体的数据库系统和需求进行调整。

SQL语句大全

SQL语句大全
--- 开始 备份 BACKUP DATABASE pubs TO testBack
创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表: A:go use 原数据库名 go select * into 目的数据库名.dbo.目的表名 from 原表名(使用旧表创建新表)
判断表是否存在
if not exists (select * from sysobjects where [name] = '表名' and xtype='U')
begin --这里创建表 end
判断存储过程是否存在
if exists (select * from sysobjects where id = object_id(N'[存储过程名]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
排序:select * from table1 order by field1,field2 [desc]
总数:select count(*) as totalcount from table1
求和:select sum(field1) as sumvalue from table1
drop database databaseName
go
Create DATABASE database-name
删除数据库
drop database dbname
备份sql server

SQL常用命令

SQL常用命令

SQL常⽤命令下⾯是⼀些常⽤的SQL语句,虽然很基础,可是却很值得收藏,对于初学者⾮常实⽤SQL常⽤命令使⽤⽅法:(1) 数据记录筛选:sql="select * from 数据表 where 字段名=字段值 order by 字段名 [desc]"sql="select * from 数据表 where 字段名 like '%字段值%' order by 字段名 [desc]"sql="select top 10 * from 数据表 where 字段名 order by 字段名 [desc]"sql="select * from 数据表 where 字段名 in ('值1','值2','值3')"sql="select * from 数据表 where 字段名 between 值1 and 值2"(2) 更新数据记录:sql="update 数据表 set 字段名=字段值 where 条件表达式"sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"(3) 删除数据记录:sql="delete from 数据表 where 条件表达式"sql="delete from 数据表" (将数据表所有记录删除)(4) 添加数据记录:sql="insert into 数据表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)"sql="insert into ⽬标数据表 select * from 源数据表" (把源数据表的记录添加到⽬标数据表)(5) 数据记录统计函数:AVG(字段名) 得出⼀个表格栏平均值COUNT(*|字段名) 对数据⾏数的统计或对某⼀栏有值的数据⾏数统计MAX(字段名) 取得⼀个表格栏最⼤的值MIN(字段名) 取得⼀个表格栏最⼩的值SUM(字段名) 把数据栏的值相加引⽤以上函数的⽅法:sql="select sum(字段名) as 别名 from 数据表 where 条件表达式"set rs=conn.excute(sql)⽤ rs("别名") 获取统的计值,其它函数运⽤同上。

PLSQL界面中英文对照

PLSQL界面中英文对照

PL/SQL界面中英文对照File:文件New 新建Program Window 程序窗口Blank 空白Function 函数Java source Java源代码Package 包Package body 主体包Package specification 包说明Procedure 过程Trigger 触发器Type 类型Type body 类型主体Type specification 类型说明Test Window 测试窗口SQL Window SQL窗口页脚内容1Report Window 报告窗口Command Window 命令窗口Explain Plan Window 解释计划窗口Diagram Window 图标窗口View 视图Materialized view 物化窗口Table 表Sequence 序列Synonym 同义词Library 库Directory 目录Job 作业Queue 队列Queue table 队列表User 用户Role 角色Profile 概要文件页脚内容2Database link 数据库连接Open 打开Program File 程序文件Test Script 测试脚本SQL Script SQL脚本Report File 报告文件Command File 命令文件Diagram File 图标文件Reopen 重新打开Save 保存Save as 另存为Save all 全部保存E-mail 电子邮件Close 关闭Close All 全部关闭Print 打印页脚内容3Print Setup 打印设置Page Setup 页面设置New Instance 新建实例Authorization 授权Exit 退出VCS:Open Project 打开工程Close Projcet 关闭工程Check Out 签出Check in 签入Undo Check Out 撤销签出Get 获取Add 添加Remove 移除Properties 属性Differences 差异History 历史页脚内容4Check Out Files 签出文件Check In Files 签入文件Undo Check Out Files 撤销签出文件Get Files 获取文件Add Files 添加文件Run Version Control System 运行Version Control SystemPreferences 首选项Available Version Control Systems 可用的版本控制系统Show Comment for 显示注释Show Options for 显示选项Reopen Project on refresh 刷新时重新打开工程Query file status on refresh 刷新时查询文件状态Allow version control over DB objectsAdd Spec and Body as a Single fileAutomatically open last used project 自动打开最近使用过的工程Project:工程New 新建页脚内容5Open 打开Save 保存Save As 另存为Save All 全部保存Close 关闭Add to Project 添加到工程Remove from Project 从工程中移除Project Items 工程项目Make 生成Build 建立Find 查找To-Do Items 任务项目Options 选项Edit:编辑Undo 撤销Redo 重做PL/SQL Beautifier PL/SQL美化器页脚内容6PL/SQL Beautifier Options PL/SQL美化器选项Cut 剪切Copy 复制Paste 粘贴Append 附加Clear 清除Select All 全选Recall Statement 重新调用语句Special Copy 专用复制Selection 选择Indent 缩进Unindent 撤销缩进Uppercase 大写Lowercase 小写Comment 注释Uncomment 取消注释Apply Syntax Case 英语语法大小写页脚内容7Sort 排序Color Mark 色标To-Do Items 任务选项Find&Replace 查找Find Next重复上次查找Find Previous 之前找到的Replace Next 替换下一个Search Bar 搜索栏Find Matches 查找拼配Full Screen 全屏Show Special Characters 显示特殊字符Code Folding 代码折叠Set Bookmark 设置书签Go to Bookmark 转到书签Bookmark List 书签列表Go to Line 转到行Next Tab Page 下一标签页页脚内容8Previous Tab Page 上一标签页页脚内容9Session:回话Log on 登录Log off 注销Set Main ConnectionImported Fixed UsersImported HistoryRecentExecute 执行Break 中断Kill 关闭Commit 提交Rollback 回滚SQL Trace SQL跟踪Debug:调试Toggle Breakpoint 切换断点Modify Breakpoint 更改断点页脚内容10Start 开始Run 运行Step Into 单步进入Step Over 单步跳过Step Out 单步退出Run to Exception 运行到异常Set Variable 设置变量Tools:工具Preferences 首选项Configure Plug-Ins 配置插件Configure Tools 配置工具Configure Documents 配置文档Configure Reports 配置报告PlsqldocMarco 宏Connections 连接Define Connections 定义连接页脚内容11Object Browser 浏览器Object Browser Folders 浏览器文件夹Object Browser Filters 浏览器过滤器File Browser 文件浏览File Browser Locations 文件浏览位置Template List 模板列表Window List 窗口列表Toolbar 工具栏Explain Plan 解释计划Code Assistant 代码助手Code Contents 代码目录Show Compiler Hints 显示编译器提示Query Builder 查询设计器Find Database Objects 查找数据库对象Compile Invalid Objects 编译无效对象Export User Object 到处用户对象Compare User Objects 比较用户对象页脚内容12Event Monitor 事件监视器Sessions 回话Test Manager 测试管理器DBMS Scheduler DBMS调度程序Export Tables 导出表Import Tables 引入表Compare Table Date 比较表数据Text Importer 文本导入器ODBC Importer ODBC导入器Data Generator 数据生成器Deployment:部署Macro:宏Documents:文档Reports:报告Window:窗口Help:帮助页脚内容13Preferences:OracleConnectionSession Mode 会话方式Multi session 多路会话Dual session 双路会话Single session 单路会话Logoff with open transaction 注销(有打开的事务)Check connection 检查链接Oracle Home(empty is autodetect) Oracle主目录名(自动检测为空)OCI library (empty is autodetect) Oracle库(自动检测为空)Force OCI7 mode on OCI8 在OCI8上强制使用OCI7Multiple Connections 多路连接Allow multiple connection 允许多路连接Store recent history 保存最近历史Store with password 带密码保存Options页脚内容14Allow editing of database source 允许编辑数据路远Ask to save edited database source 询问师傅保存刚变异过的数据库源Allow compilation of read-only source files 允许编译只读源文件Confirm commit & rollback 确认提交与回滚Use DBA Views if available 若可以用,则使用DBA查看Automatic statistics 自动统计Unicode enabled 允许UnicodeCheck for client & server character set mismatch 检查哭户机与服务器字符集是否匹配Add column alias list for View DDL 查看DDL的地址栏别名列表CompilerPL/SQL Optimize level 优化等级PL/SQL Code type 编码类型PL/Scope identifiers 标识符PL/SQL Conditional Compilation Flags 条件编译标志PL/SQL Warnings 警告PL/SQL Substitution Variables 替换变量Debugger 调试器页脚内容15Show variable values in a popup 在弹出式菜单里显示变量值Step over SYS objects 单步跳过SYS对象Update watches after each step 在每步之前更新监视器Update call stack after each step 在每步之后更新堆栈Add debug information when compiling 编译时添加调试信息NEVER add debug info for connections (user@db) 从来不连接添加调试信息(用户@数据库)ALWAYS add debug info for connections (user@db) 总是为连接添加调试信息(用户@数据库)NEVER add debug info for objects ([owner,] name) 从不为对象添加调试信息([所有者.]名称)Output 输出Trace 跟踪Available Columns可用按钮Selected Columns 以选按钮Event kind 时间种类Comment注释Event sequence 时间序列Event time事件时间Exception 异常Unit name 单元名Proc line 过程行Unit line text 单元行文本Proc name 过程名页脚内容16Proc params 过程参数Proc type 过程类型Unit line 单元行Unit type 单元类型Profiler 概览图User Interface 用户界面Options选项Autosave username自动保存用户名Autosave desktop自动保存桌面Use internal HTML viewer使用内置HTML阅览器HTML help window:”stay on top”HTML帮助窗口“固顶”Use multi-row tabs使用多行制表符Show complete file path in window titles 在窗口标题里面实现完成的文件路径Use projects 使用工程Position messageboxes near mouse pointer定位信息框靠近鼠标指针Show file dialogs with details view显示带详细内容的文件对话框Notify end of long running queries通知结束长时间运行的查询页脚内容17Delay(s)延迟Sound file声音文件DSA Dialogs:DSA对话框Shows a list of dialogs that have the “Don’t show this message again”option checked. You can delete lines for the messages you want you enable. 显示含有“不再显示这个信息”的对话框,你可以删除用于你要启用的信息行。

sql语句英文

sql语句英文

sq‎l语‎句英‎文‎篇‎一:‎中‎英文‎对照‎T‎-s‎q l‎语句‎/‎*T‎-S‎Q L‎语言‎基础‎列‎格式‎:‎数字‎:‎B i‎g i‎n t‎大‎整数‎型数‎字,‎i n‎t‎标准‎整型‎数字‎,s‎m a‎l l‎i n‎t‎小整‎型数‎字,‎t i‎n y‎i n‎t‎微整‎型数‎字,‎d e‎c i‎m a‎l‎精确‎数字‎,f‎l o‎a t‎近‎似数‎字。

‎升序‎货‎币:‎m‎o n‎e y‎长‎度为‎8字‎节,‎s m‎a l‎l m‎o n‎e y‎长‎度为‎4字‎节。

‎‎日期‎时间‎:‎d a‎t e‎t i‎m e‎年‎月日‎小时‎分钟‎秒厘‎,s‎m a‎l l‎t i‎m e‎年‎月日‎小时‎分钟‎秒,‎d a‎t e‎年‎月日‎,t‎i m‎e‎小时‎分钟‎秒厘‎。

‎字‎符串‎:‎c h‎a r‎固‎定长‎度,‎v a‎r c‎h a‎r‎可变‎长度‎,n‎c h‎a r‎固‎定长‎度U‎,n‎v a‎r c‎h a‎r‎可变‎长度‎U,‎b i‎n a‎r y‎固‎定长‎度二‎进位‎,v‎a r‎b i‎n a‎r y‎可‎变长‎度二‎进位‎,i‎m a‎g e‎存‎储图‎表格‎。

‎格‎式:‎大‎写‎T-‎S Q‎L关‎键字‎,︱‎分‎隔括‎号或‎大括‎号语‎法,‎只能‎使用‎其中‎一项‎,[‎]‎可选‎语法‎,{‎}‎必选‎语法‎,[‎,…‎n]‎前面‎的项‎可重‎复n‎次,‎用逗‎号隔‎开,‎[…‎n]‎前‎面的‎项可‎重复‎n次‎,用‎空格‎隔开‎。

‎D‎e c‎l a‎r e‎声‎明,‎s e‎t‎为变‎量赋‎值,‎p r‎i n‎t‎输出‎,d‎e c‎l a‎r e‎@‎n a‎m e‎n‎c h‎a r‎(‎5)‎s‎e t‎@‎n a‎m e‎=‎’王‎华’‎p‎r i‎n t‎@‎n a‎m e‎。

‎‎流程‎控制‎语句‎:‎b e‎g i‎n…‎e n‎d‎开始‎…结‎束‎,i‎f‎…e‎l s‎e,‎如果‎,c‎a s‎e‎w h‎e n‎…t‎h e‎n‎事实‎实‎情,‎w h‎i l‎(来‎自:‎W W‎w.‎c n‎B o‎t h‎W i‎n.‎博‎威‎范文‎网‎:s‎q l‎语句‎英文‎)e‎w‎h i‎l e‎b‎e g‎i n‎…e‎n d‎当‎…时‎候,‎r e‎t u‎r n‎返‎回,‎聚‎合函‎数:‎A‎v g‎()‎平‎均值‎,c‎o u‎n t‎()‎计‎数,‎m a‎x(‎)‎最大‎值,‎m i‎n(‎)‎最小‎值,‎s u‎m(‎)‎合计‎,h‎a v‎i n‎g,‎所有‎,d‎i s‎t i‎n c‎t‎不同‎,不‎重复‎。

VFP中SQL语句大全

VFP中SQL语句大全

VFP中SQL语句(yǔjù)大全VFP中SQL语句(yǔjù)大全VFP的SQL命令(mìng lìng)和语句(yǔjù)大全1.CREATE TABLE - SQL命令(mìng lìng)该命令的一般(yībān)格式为:CREATE TABLE |dbf <表文件名>(字段名1 字段类型(lèixíng) [(字段宽度[,小数位数])][,字段名2 字段类型[(字段宽度[,小数位数])]]……)例:CREATE TABLE xscj(xh c(8),xm c(6),xb c(2),;cj n(5,1),k srq d)2.ALTER TABLE - SQL命令功能命令格式示例添加字段ALTER TABLE xscj ADD COLUMN kcmc C(14)重命名字段 ALTER TABLE xscj RENAME COLUMN kcmc TO kc删除字段 ALTER TABLE xscj DROP COLUMN kc3.INSERT-SQL命令该命令的一般格式为:INSERT INTO <表名>[(字段名1[,字段名2 …])] VALUES (表达式1[,表达式2 …])例:INSERT INTO xscj(xh,xm,cj) VALUES ("81991001", "张良", 85.5)4.UPDATE-SQL 命令(mìng lìng)。

命令(mìng lìng)格式: UPDATE <表名> SET 字段1 = 表达式1 [,字段2 = 表达式2 …];WHERE 条件(tiáojiàn)表达式例: UPDATE xscj SET cj = cj*1.05 WHERE cj>805.DELETE-SQL 命令(mìng lìng)。

SQL基本查询语句翻译

SQL基本查询语句翻译

select sno,sname from student从学生资料表中查询全体学生的学号、姓名select sname,sno,sdept from student从学生资料表中查询全体学生的姓名、学号和系别select * from student从学生资料表中查询全体学生的详细信息select sname,2006-sage from student从学生资料表中查询全体学生的姓名及其出生年月select sname,2006-sage as '出生年月' from student从学生资料表中查询全体学生的姓名及其出生年月select sname as'姓名',2006-sage as '出生年月' from student从学生资料表中查询全体学生的姓名及其出生年月select sname 姓名,2006-sage 出生年月from student从学生资料表中查询全体学生的姓名及其出生年月select distinct sno from student从学生资料表中查询所有不同的学号select sname from student where sdept='计算机系'从学生资料表中查询所在系为计算机系的学生姓名select sname,sage from student where sage<20从学生资料表中查询年龄在20岁以下的学生姓名及其年龄select sname,sdept,sage from student where sage between 20 and 23从学生资料表中查询年龄在20至23岁(包括20岁和23岁)之间的学生姓名、系别和年龄select sname,sdept,sage from studen t where sage>=20 and sage<=23从学生资料表中查询年龄在20至23岁(包括20岁和23岁)之间的学生姓名、系别和年龄select sname,sdept,sage from student where sage not between 20 and 23从学生资料表中查询年龄不在20至23岁之间的学生姓名、系别和年龄select sname,sdept,sage from student where sage<20 or sage>23从学生资料表中查询年龄年龄小于20岁或者大于23岁的学生姓名、系别和年龄select sname,ssex from student where sdept in ('信息系','数学系','计算机系')从学生资料表中查询信息系、数学系和计算机系学生的姓名和性别select sname,ssex from studen t where sdept='信息系' or sdept='数学系' or sdept='计算机系'从学生资料表中查询信息系或者数学系或者计算机系学生的姓名和性别select sname,ssex from student where sdept not in ('信息系','数学系','计算机系')从学生资料表中查询既不是信息系、数学系又不是计算机系的学生的姓名和性别select sname,ssex from student where sdept!='信息系' or sdept!='数学系' or sdept!='计算机系'从学生资料表中查询不是信息系或者不是数学系或者不是计算机系的学生的姓名和性别select sname,ssex from student where sdept!='信息系' and sdept!='数学系' and sdept!='计算机系'从学生资料表中查询既不是信息系、数学系又不是计算机系的学生的姓名和性别select * from student where sname like'张%'从学生资料表中查询所有姓张学生的详细信息select * from student where sname like'[张李刘]%'从学生资料表中查询所有姓张、李、刘的学生的详细信息select * from student where sname like'_[小大]%'从学生资料表中查询名字中第2个字为小或者大字的学生的详细信息select * from student where sname not like'刘%'从学生资料表中查询不姓刘的学生的详细信息select * from student where sno like'%[^2-6]'从学生资料表中查询学号不以2-6任意一个字符结尾的学生的详细信息select * from sc where grade is null从学生成绩表中查询无成绩的学生的详细信息select * from sc where grade is not null从学生成绩表中查询有成绩的学生的详细信息select * from student where sdept='计算机系' and sage<20从学生资料表中查询计算机系且年龄小于20岁的学生的详细信息select * from studen t order by sage从学生资料表中查询所有学生的详细信息,查询结果按年龄升序排列select * from studen t order by sage desc从学生资料表中查询所有学生的详细信息,查询结果按年龄降序排列select sno,grade from sc where cno='c02' order by grade desc从学生成绩表中查询课程号为c02的所有学生的学号和成绩,查询结果按成绩降序排列select * from student order by sdept,sage desc从学生资料表中查询所有学生的详细信息,查询结果按系别升序排列,同一系中的学生按年龄降序排列select count(*) from student从学生资料表中查询学生的总人数select count(distinct sno) from sc从学生成绩表中查询选修了课程的学生人数select sum(grade) from sc where sno='9512101'从学生成绩表中查询并计算学号为9512101的学生的总成绩select avg(grade) from sc where cno='c01'从学生成绩表中查询并计算课程号为c01的学生的平均成绩select max(grade),min(grade) from sc where cno='c01'从学生成绩表中查询课程号为c01的学生最高分数和最低分数select cno as 课程号,count(sno) as 选课人数from sc group by cno从学生成绩表中查询并计算各个课程号及相应的选课人数select sno 学号,count(*) 选课门数,avg(grade) 平均成绩from sc group by sno从学生成绩表中查询并计算各个学号及对应的选课门数并求平均成绩select sno from sc group by sno having count(*)>3从学生成绩表中查询选修了3门及以上课程的学生学号select sno,avg(grade),count(*) from sc group by sno having count(*)>=4从学生成绩表中查询选修了4门及以上的学生学号、平均成绩及课程数select * from studen t inner join sc on student.sno=sc.sno从学生资料表和成绩表中查询每个学生及其选修课程的情况select student.sno,sname,ssex,sage,sdept,cno,grade,xklb from student join sc on student.sno=sc.sno从学生资料表和成绩表中查询每个学生及其选修课程情况的学生学号、姓名、姓名、年龄、课程号、成绩和相关类别select sname,cno,grade from student join sc on s tudent.sno=sc.sno where sdept='计算机系'从学生资料表和成绩表中查询计算机系的每个学生及相应选修课程的学生姓名、课程号和成绩。

sql中英文对照

sql中英文对照

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 --定义当前事务数据访问特征--程序化SQLDECLARE --为查询设定游标EXPLAN --为查询描述数据访问计划OPEN --检索查询结果打开一个游标FETCH --检索一行查询结果CLOSE --关闭游标PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句DESCRIBE --描述准备好的查询---局部变量declare @id char(10)--set @id = '10010001'select @id = '10010001'---全局变量---必须以@@开头--IF ELSEdeclare @x int @y int @z intselect @x = 1 @y = 2 @z=3if @x > @yprint 'x > y' --打印字符串'x > y'else if @y > @zprint 'y > z'else print 'z > y'--CASEuse panguupdate employeeset e_wage =casewhen job_level = '1' then e_wage*1.08when job_level = '2' then e_wage*1.07when job_level = '3' then e_wage*1.06else e_wage*1.05end--WHILE CONTINUE BREAKdeclare @x int @y int @c intselect @x = 1 @y=1while @x < 3beginprint @x --打印变量x 的值while @y < 3beginselect @c = 100*@x + @yprint @c --打印变量c 的值select @y = @y + 1endselect @x = @x + 1select @y = 1end--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 valueex:(宿主)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 < 1000and stockindex = 24not stocksex = 'man'stocknumber between 20 and 100stocknumber 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_nameselect stockname , "stocknumber" = count(*) from table_name group by stockname--------- group by 将表按行分组,指定列中有相同的值having count(*) = 2 --------- having选定指定的组select *from table1, table2where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接select stockname from table1union [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 = defaultStockname = nullStocknumber = Stockname + 4***delete***delete from table_name where Stockid = 3truncate 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(/*常用函数*/)***----统计函数----AVG --求平均值COUNT --统计数目MAX --求最大值MIN --求最小值SUM --求和--AVGuse panguselect avg(e_wage) as dept_avgWagefrom employeegroup by dept_id--MAX--求工资最高的员工姓名use panguselect e_namefrom employeewhere 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.1415926535897936RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数----字符串函数----ASCII() --函数返回字符表达式最左端字符的ASCII 码值CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值LOWER() --函数把字符串全部转换为小写UPPER() --函数把字符串全部转换为大写STR() --函数把数值型数据转换为字符型数据LTRIM() --函数把字符串头部的空格去掉RTRIM() --函数把字符串尾部的空格去掉LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0 值DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异--0 两个SOUNDEX 函数返回值的第一个字符不同--1 两个SOUNDEX 函数返回值的第一个字符相同--2 两个SOUNDEX 函数返回值的第一二个字符相同--3 两个SOUNDEX 函数返回值的第一二三个字符相同--4 两个SOUNDEX 函数返回值完全相同QUOTENAME() --函数返回被特定字符括起来的字符串/*select quotename('abc', '{') quotename('abc')运行结果如下----------------------------------{{abc} [abc]*/REPLICATE() --函数返回一个重复character_expression 指定次数的字符串/*select replicate('abc', 3) replicate( 'abc', -2)运行结果如下----------- -----------abcabcabc NULL*/REVERSE() --函数将指定的字符串的字符排列顺序颠倒REPLACE() --函数返回被替换了指定子串的字符串/*select replace('abc123g', '123', 'def')运行结果如下----------- -----------abcdefg*/SPACE() --函数返回一个有指定长度的空白字符串STUFF() --函数用另一子串替换字符串指定位置长度的子串----数据类型转换函数----CAST() 函数语法如下CAST() (<expression> AS <data_ type>[ length ])CONVERT() 函数语法如下CONVERT() (<data_ type>[ length ], <expression> [, style])select cast(100+99 as char) convert(varchar(12), getdate())运行结果如下------------------------------ ------------199 Jan 15 2000----日期函数----DAY() --函数返回date_expression 中的日期值MONTH() --函数返回date_expression 中的月份值YEAR() --函数返回date_expression 中的年份值DATEADD(<datepart> ,<number> ,<date>)--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期DATEDIFF(<datepart> ,<number> ,<date>)--函数返回两个指定日期在datepart 方面的不同之处DATENAME(<datepart> , <date>) --函数以字符串的形式返回日期的指定部分DATEPART(<datepart> , <date>) --函数以整数值的形式返回日期的指定部分GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间----系统函数----APP_NAME() --函数返回当前执行的应用程序的名称COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值COL_NAME(<table_id>, <column_id>) --函数返回表中指定字段的名称即列名DATALENGTH() --函数返回数据表达式的数据的实际长度DB_ID(['database_name']) --函数返回数据库的编号DB_NAME(database_id) --函数返回数据库的名称HOST_ID() --函数返回服务器端计算机的名称HOST_NAME() --函数返回服务器端计算机的名称IDENTITY(<data_type>[, seed increment]) [AS column_name])--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column列到新表中/*select identity(int, 1, 1) as column_nameinto newtablefrom oldtable*/ISDATE() --函数判断所给定的表达式是否为合理日期ISNULL(<check_expression>, <replacement_value>) --函数将表达式中的NULL 值用指定值替换ISNUMERIC() --函数判断所给定的表达式是否为合理的数值NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值NULLIF(<expression1>, <expression2>)--NULLIF 函数在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1 的值--------------------------------------------------------------------------------sql中的保留字action add aggregate allalter after and asasc avg avg_row_length auto_incrementbetween bigint bit binaryblob bool both bycascade case char characterchange check checksum columncolumns comment constraint createcross current_date current_time current_timestampdata database databases datedatetime day day_hour day_minuteday_second dayofmonth dayofweek dayofyeardec decimal default delayeddelay_key_write delete desc describedistinct distinctrow double dropend else escape escapedenclosed enum explain existsfields file first floatfloat4 float8 flush foreignfrom for full functionglobal grant grants grouphaving heap high_priority hourhour_minute hour_second hosts identifiedignore in index infileinner insert insert_id intinteger interval int1 int2int3 int4 int8 intoif is isam joinkey keys kill last_insert_idleading left length likelines limit load locallock logs long longbloblongtext low_priority max max_rowsmatch mediumblob mediumtext mediumintmiddleint min_rows minute minute_secondmodify month monthname myisamnatural numeric no notnull on optimize optionoptionally or order outeroutfile pack_keys partial passwordprecision primary procedure processprocesslist privileges read realreferences reload regexp renamereplace restrict returns revokerlike row rows secondselect set show shutdownsmallint soname sql_big_tables sql_big_selectssql_low_priority_updates sql_log_off sql_log_update sql_select_limit sql_small_result sql_big_result sql_warnings straight_joinstarting status string tabletables temporary terminated textthen time timestamp tinyblobtinytext tinyint trailing totype use using uniqueunlock unsigned update usagevalues varchar variables varyingvarbinary with write whenwhere year year_month zerofill详细出处参考:/article/12820_3.htm。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

[code=SQL][/code]--语句功能--数据操作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 --定义当前事务数据访问特征--程序化SQLDECLARE --为查询设定游标EXPLAN --为查询描述数据访问计划OPEN --检索查询结果打开一个游标FETCH --检索一行查询结果CLOSE --关闭游标PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句DESCRIBE --描述准备好的查询---局部变量declare @id char(10)--set @id = '10010001'select @id = '10010001'---全局变量---必须以@@开头--IF ELSEdeclare @x int @y int @z intselect @x = 1 @y = 2 @z=3if @x > @yprint 'x > y' --打印字符串'x > y'else if @y > @zprint 'y > z'else print 'z > y'--CASEuse panguupdate employeeset e_wage =casewhen 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.05end--WHILE CONTINUE BREAK declare @x int @y int @c intselect @x = 1 @y=1while @x < 3beginprint @x --打印变量x 的值while @y < 3beginselect @c = 100*@x + @yprint @c --打印变量c 的值select @y = @y + 1endselect @x = @x + 1select @y = 1end--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 valueex:(宿主)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 < 1000and stockindex = 24not stocksex = 'man'stocknumber between 20 and 100stocknumber 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_nameselect stockname , "stocknumber" = count(*) from table_name group by stockname--------- group by 将表按行分组,指定列中有相同的值having count(*) = 2 --------- having选定指定的组select *from table1, table2where table1.id *= table2.id -------- 左外部连接,table1中有的而table2中没有得以null表示table1.id =* table2.id -------- 右外部连接select stockname from table1union [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 = defaultStockname = nullStocknumber = Stockname + 4***delete***delete from table_name where Stockid = 3truncate 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 --求和--AVGuse panguselect avg(e_wage) as dept_avgWagefrom employeegroup by dept_id--MAX--求工资最高的员工姓名use panguselect e_namefrom employeewhere 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.1415926535897936RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1 间的随机浮点数----字符串函数----ASCII() --函数返回字符表达式最左端字符的ASCII 码值CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL 值LOWER() --函数把字符串全部转换为小写UPPER() --函数把字符串全部转换为大写STR() --函数把数值型数据转换为字符型数据LTRIM() --函数把字符串头部的空格去掉RTRIM() --函数把字符串尾部的空格去掉LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置SOUNDEX() --函数返回一个四位字符码--SOUNDEX函数可用来查找声音相似的字符串但SOUNDEX函数对数字和汉字均只返回0值DIFFERENCE() --函数返回由SOUNDEX 函数返回的两个字符表达式的值的差异--0 两个SOUNDEX 函数返回值的第一个字符不同--1 两个SOUNDEX 函数返回值的第一个字符相同--2 两个SOUNDEX 函数返回值的第一二个字符相同--3 两个SOUNDEX 函数返回值的第一二三个字符相同--4 两个SOUNDEX 函数返回值完全相同QUOTENAME() --函数返回被特定字符括起来的字符串/*select quotename('abc', '{') quotename('abc')运行结果如下----------------------------------{{abc} [abc]*/REPLICATE() --函数返回一个重复character_expression 指定次数的字符串/*select replicate('abc', 3) replicate( 'abc', -2)运行结果如下----------- -----------abcabcabc NULL*/REVERSE() --函数将指定的字符串的字符排列顺序颠倒REPLACE() --函数返回被替换了指定子串的字符串/*select replace('abc123g', '123', 'def')运行结果如下----------- -----------abcdefg*/SPACE() --函数返回一个有指定长度的空白字符串STUFF() --函数用另一子串替换字符串指定位置长度的子串----数据类型转换函数----CAST() 函数语法如下CAST() (<expression> AS <data_ type>[ length ])CONVERT() 函数语法如下CONVERT() (<data_ type>[ length ], <expression> [, style])select cast(100+99 as char) convert(varchar(12), getdate())运行结果如下补上...----日期函数----DAY() --函数返回date_expression 中的日期值MONTH() --函数返回date_expression 中的月份值YEAR() --函数返回date_expression 中的年份值DATEADD(<datepart> ,<number> ,<date>)--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期DATEDIFF(<datepart> ,<number> ,<date>)--函数返回两个指定日期在datepart 方面的不同之处DATENAME(<datepart> , <date>) --函数以字符串的形式返回日期的指定部分DATEPART(<datepart> , <date>) --函数以整数值的形式返回日期的指定部分GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间----系统函数----APP_NAME() --函数返回当前执行的应用程序的名称COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值COL_NAME(<table_id>, <column_id>) --函数返回表中指定字段的名称即列名DATALENGTH() --函数返回数据表达式的数据的实际长度DB_ID(['database_name']) --函数返回数据库的编号DB_NAME(database_id) --函数返回数据库的名称HOST_ID() --函数返回服务器端计算机的名称HOST_NAME() --函数返回服务器端计算机的名称IDENTITY(<data_type>[, seed increment]) [AS column_name])--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column列到新表中/*select identity(int, 1, 1) as column_nameinto newtablefrom oldtable*/ISDATE() --函数判断所给定的表达式是否为合理日期ISNULL(<check_expression>, <replacement_value>) --函数将表达式中的NULL 值用指定值替换ISNUMERIC() --函数判断所给定的表达式是否为合理的数值NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值NULLIF(<expression1>, <expression2>)--NULLIF 函数在expression1 与expression2 相等时返回NULL 值若不相等时则返回expression1 的值--------------------------------------------------------------------------------。

相关文档
最新文档