`
dilantaya
  • 浏览: 101704 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

标准SQL语句总结

阅读更多
标准SQL语句总结,标准SQL语言基本上适用于下面所列出的数据库软件
-----------------------------------------------------------------------------
数据库软件清单
A商业数据库软件如下
1.微软的MS SQL Server和Access
2.IBM的DB2,informax
3.Sybase的大型数据库ASE,中小型数据库ASA
4.甲骨文公司的Oracle8.0,oracle9i系列
5.Borland公司的InterBase
B多种开源免费数据库

Mysql,PostgreSQL,SQLite、SimpleSQL、Berkely DB、Minosse、Firebird

(Mysql,PostgreSQL是目前使用最广泛)
-----------------------------------------------------------------------------
最精简短小的SQL语句
SQL分类:
DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)
DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)
DCL—数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK)

1、说明:创建数据库CREATE DATABASE database-name
2、说明:删除数据库drop database dbname
3、说明:
备份sql server
USE master
EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'
开始备份
BACKUP DATABASE pubs TO testBack
4、说明:创建新表
create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)
根据已有的表创建新表:
A:create table tab_new like tab_old (使用旧表创建新表)
B:create table tab_new as select col1,col2… from tab_old definition only
5、说明:删除新表drop table tabname
6、说明:增加一个列Alter table tabname add column col type
7、说明
添加主键: Alter table tabname add primary key(col)
删除主键: Alter table tabname drop primary key(col)
8、
创建索引:create [unique] index idxname on tabname(col….)
删除索引:drop index idxname

9、说明:
创建视图:create view viewname as select statement
删除视图:drop view viewname
10、说明:几个简单的基本的sql语句
选择:select * from table1 where 范围
插入:insert into table1(field1,field2) values(value1,value2)
删除:delete from table1 where 范围
更新:update table1 set field1=value1 where 范围
查找:select * from table1 where field1 like ’%value1%’ ---like的语法很精妙,查资料!
排序:select * from table1 order by field1,field2 [desc]
总数:select count as totalcount from table1
求和:select sum(field1) as sumvalue from table1
平均:select avg(field1) as avgvalue from table1
最大:select max(field1) as maxvalue from table1
最小:select min(field1) as minvalue from table1
-----------------------------------------------------------------------------

--数据常用操作
SELECT --从数据库表中检索数据
INSERT --向数据库表添加新数据
UPDATE --更新数据库表中的数据
DELETE --从数据库表中删除数据
-----------------------------------------------------------------------------
--数据库对象操作语句
CREATE TABLE --创建一个数据库表
ALTER TABLE --修改数据库表结构
DROP TABLE --从数据库中删除表

CREATE VIEW --创建一个视图
ALTER VIEW --修改一个视图
DROP VIEW --删除一个视图

CREATE INDEX --为表创建一个索引
DROP INDEX --从表中删除索引

CREATE PROCEDURE--创建一个存储过程
DROP PROCEDURE --删除存储过程

CREATE TRIGGER --创建一个触发器
DROP TRIGGER --从删除触发器
-----------------------------------------------------------------------------
--数据权限控制
GRANT    --授予用户访问权限
DENY    --拒绝用户访问
REVOKE    --解除用户访问权限
-----------------------------------------------------------------------------
--事务控制
COMMIT    --结束当前事务
ROLLBACK --中止当前事务
SET TRANSACTION --定义当前事务数据访问特征
-----------------------------------------------------------------------------
--数据库函数,过程,触发器脚本的SQL
DECLARE --为查询设定游标
EXPLAN --为查询描述数据访问计划
OPEN --检索查询结果打开一个游标
FETCH --检索一行查询结果
CLOSE --关闭游标
PREPARE --为动态执行准备SQL 语句
EXECUTE --动态地执行SQL 语句
DESCRIBE --描述准备好的查询
-----------------------------------------------------------------------------
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
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
where ***

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

delete from table_name where Stockid = 3
truncate table_name ----------- 删除表中所有行,仍保持表的完整性
drop table table_name --------------- 完全删除表

-----------------------------------------------------------------------------
标准SQL统计函数
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)
-----------------------------------------------------------------------------
标准SQL字符串函数

ASCII() --函数返回字符表达式最左端字符的ASCII 码值
CHAR() --函数用于将ASCII 码转换为字符--如果没有输入0 ~ 255 之间的ASCII 码值CHAR 函数会返回一个NULL
LOWER() --函数把字符串全部转换为小写
UPPER() --函数把字符串全部转换为大写
STR() --函数把数值型数据转换为字符型数据
LTRIM() --函数把字符串头部的空格去掉
RTRIM() --函数把字符串尾部的空格去掉
LEFT(),RIGHT(),SUBSTRING() --函数返回部分字符串
CHARINDEX(),PATINDEX() --函数返回字符串中某个指定的子串出现的开始位置
REPLICATE() --函数返回一个重复character_expression 指定次数的字符串
select replicate('abc', 3) replicate( 'abc', -2)运行结果如下abcabcabc NULL
REVERSE() --函数将指定的字符串的字符排列顺序颠倒
REPLACE() --函数返回被替换了指定子串的字符串
select replace('abc123g', '123', 'def')运行结果如下abcdefg
SPACE() --函数返回一个有指定长度的空白字符串
STUFF() --函数用另一子串替换字符串指定位置长度的子串


-----------------------------------------------------------------------------
标准SQL语法

局部变量和局变量
---局部变量 (以@开头)
格式:declare @变量名 类型
--set @id = '10010001'
select @id = '10010001'

---全局变量 (必须以@@开头)
格式:declare @@变量名 类型
代码: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
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

分享到:
评论

相关推荐

    标准SQL语句总结(经典总结)

    2. **SQL语句分类**: - **数据定义语言(DDL)**:包括`CREATE`、`ALTER`、`DROP`,用于创建、修改和删除数据库对象,如表、视图、索引等。 - **数据操纵语言(DML)**:包含`INSERT`、`DELETE`、`SELECT`和`...

    实用总结SQL语句大全实用总结SQL语句大全.rar

    本资源“实用总结SQL语句大全”涵盖了SQL的基本概念、语法以及高级特性,旨在帮助用户全面理解和掌握SQL。 首先,SQL的核心在于查询。基本的查询语句`SELECT`用于从数据库中提取数据,可以配合`FROM`指定数据来源,...

    sql常用语句总结,增删改查等sql语句

    SELECT是最复杂的SQL语句,用于检索数据库中的数据。基础形式如下: ``` SELECT 字段 FROM 表名 WHERE 条件; ``` 查询所有学生的名字和年龄: ``` SELECT Name, Age FROM Students; ``` 如果只想查找年龄...

    SQL查询语句精华总结

    在Java中,可以使用JDBC(Java Database Connectivity)API来执行SQL语句。首先需要加载驱动,建立连接,创建Statement或PreparedStatement对象,然后执行SQL并处理结果集。 ```java Class.forName(...

    SQL语句辅助工具

    总结来说,"SQL语句辅助工具"是一个实用的开发辅助软件,通过将SQL语句转换为C#代码,简化了数据库操作的过程,提高了开发效率,同时也降低了出错的可能性。对于使用C#和SQL的开发人员来说,这是一款值得拥有的工具...

    sql语句大全总结

    )是标准的语句分隔符,用于分隔每条 SQL 语句,以便在同一个请求中执行多条语句。但是,在某些数据库管理系统中,如 MS Access 和 SQL Server 2000,可能不需要使用分号结尾。 SQL 可以分为两个部分:数据操作语言...

    通过解析sql语句获取表血缘关系项目

    1. **SQL语句解析**:SQL(Structured Query Language)是用于管理和处理关系型数据库的标准语言。解析SQL语句是指将人类可读的SQL命令转化为计算机可执行的指令。这一过程通常由数据库管理系统(DBMS)完成,但开发者...

    Sql语句自动生成器

    总结来说,SQL语句自动生成器是提高数据库管理效率、降低错误率的有效工具。它降低了SQL学习曲线,使得数据库操作更加便捷,尤其适合初学者和需要快速处理大量SQL语句的开发者。通过“SQL语句生成器.exe”这个执行...

    SQL语句生成及分析器

    总结来说,"SQL语句生成及分析器"是一个强大的数据库管理工具,通过直观的用户界面,帮助用户快速生成符合各种数据库系统语法的SQL语句,并进行语法分析和性能优化。无论是新手还是经验丰富的DBA,都能从中受益,...

    Oracle基本sql语句

    本文将总结一些Oracle基本SQL语句,帮助用户快速复习并掌握其用法。 首先,了解SQL(结构化查询语言)的基础功能是十分必要的。SQL由一系列命令组成,这些命令允许用户与数据库进行交流。其中,SELECT语句是SQL中最...

    SQL语句自动生成

    总结来说,"SQL语句自动生成"是一个实用的数据库应用工具,通过智能化的方式降低了SQL的使用难度,提升了数据库操作的便捷性。它通过解析用户输入,自动生成相应的SQL语句,使得数据库管理变得更加简单易行。配合...

    java操作mysql数据库,不写sql语句版

    总结起来,不直接写SQL语句的Java MySQL数据库操作通常依赖于ORM框架或Spring提供的数据访问工具,这些工具通过映射机制和高级API,使得开发者可以更加专注于业务逻辑,而不是数据库细节。在实际项目中,`DataAccess...

    JsonSQL:用SQL语句解析JSON文件

    **JsonSQL: SQL语句解析JSON文件** 在大数据处理和Web应用中,JSON(JavaScript Object Notation)格式已经成为数据交换的常见格式。然而,对于习惯使用SQL查询关系型数据库的人来说,处理JSON数据可能会觉得不太...

    sql语句总结配合业务实例

    SQL(Structured Query Language)是用于管理和操作数据库的标准编程语言,它是数据存储、查询、更新和管理的核心工具。...通过网页版的"sql语句总结.html",你可以更直观地学习和查阅这些知识,进一步提高工作效率。

    SQL SQL语句大全

    根据给定的信息,我们可以深入探讨SQL语言的基本概念与应用,并基于示例代码解析常见的SQL语句及其实现功能。此文档主要围绕SQL语句的基本结构、表的创建、数据插入以及查询等方面进行展开。 ### SQL语言简介 SQL...

    java面试sql语句大总结

    ### Java面试SQL语句大总结 #### 一、SQL基础知识概览 在Java开发工作中,对SQL的理解与应用是至关重要的。SQL(Structured Query Language,结构化查询语言)是一种用于管理关系数据库的标准语言,它主要分为以下...

    access 一次执行多条sql语句

    ### Access一次执行多条SQL语句 在Access数据库管理中,有时我们需要在同一事务中执行多条SQL语句来确保数据的一致性和完整性。例如,在更新某个记录后可能还需要执行其他操作,如增加日志记录等。本文将详细介绍...

    excel生成sql语句小工具

    总结起来,“Excel生成SQL语句小工具”是一款便捷、高效的实用工具,能够极大地提高数据导入的效率,减少手动操作带来的错误。无论是对普通用户还是开发者,它都是一款值得信赖的助手,为数据管理工作带来了极大的...

    SQL语句\sql 游标总结

    SQL 语句和游标总结 SQL 语句和游标是数据库管理系统中两个非常重要的概念。游标提供了一种从表中检索数据并进行操作的灵活手段,主要用在服务器上,处理由客户端发送给服务器端的 SQL 语句,或是批处理、存储过程...

    SQL 语句执行步骤

    ### SQL语句执行步骤 #### 一、引言 SQL(Structured Query Language)是一种用于管理和操作关系型数据库的标准语言。为了更好地理解和优化SQL查询过程,深入研究其内部执行机制至关重要。本文将详细介绍SQL语句...

Global site tag (gtag.js) - Google Analytics