搜档网
当前位置:搜档网 › sql搜索语句大全

sql搜索语句大全

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 --从数据库中删除一个域

***SELECT***

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

example:

select * from stock_information where stockid = str(nid)

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) values

("xxx","xxxx")

Values (select Stockname , Stocknumber from

Stock_table2)---value为select语句

***update***

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

Stockname = default

Stockname = null

Stocknumber = Stockname + 4

***delete***

delete from table_name where Stockid = 3

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

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

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

null .....

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

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

varchar(30))

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

alter table table_name drop constraint Stockname_default ----

删除Stockname的default约束

***function(/*常用函数*/)***

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

AVG --求平均值

COUNT --统计数目

MAX --求最大值

MIN --求最小值

SUM --求和

--AVG

use pangu

select avg(e_wage) as dept_avgWage

from employee

group by dept_id

--MAX

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

use pangu

select e_name

from employee

where e_wage =

(select max(e_wage)

from employee)

--STDEV()

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

--STDEVP()

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

--VAR()

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

--VARP()

--VARP()函数返回总体变异数

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

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

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

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

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

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

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

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

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

ATAN(float_expression) --返回正切是FLOAT 值的以弧度表示的角

ATAN2(float_expression1,float_expression2)

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

DEGREES(numeric_expression)

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

--INTEGER/MONEY/REAL/FLOAT 类型

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

--INTEGER/MONEY/REAL/FLOAT 类型

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

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

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

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

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

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

--INTEGER/MONEY/REAL/FLOAT 类型

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

--INTEGER/MONEY/REAL/FLOAT 类型

ROUND(numeric_expression) --返回以integer_expression

为精度的四舍五入值返回的数据

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

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

--INTEGER/MONEY/REAL/FLOAT 类型

SIGN(numeric_expression) --测试参数的正负号返回0 零值1 正数或-1 负数返回的数据类型

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

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

RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1

间的随机浮点数

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

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() ( AS [ length ])

CONVERT() 函数语法如下

CONVERT() ([ length ], [, 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( , ,)

--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期

DATEDIFF( , ,)

--函数返回两个指定日期在datepart 方面的不同之处

DATENAME( , ) --函数以字符串的形式返回日期的指定部分 DATEPART( , ) --函数以整数值的形式返回日期的指定部分 GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间

----系统函数----

APP_NAME() --函数返回当前执行的应用程序的名称

COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值

COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值

COL_NAME(, ) --函数返回表中指定字段的名称即列名 DATALENGTH() --函数返回数据表达式的数据的实际长度

DB_ID(['database_name']) --函数返回数据库的编号

DB_NAME(database_id) --函数返回数据库的名称

HOST_ID() --函数返回服务器端计算机的名称

HOST_NAME() --函数返回服务器端计算机的名称

IDENTITY([, seed increment]) [AS column_name])

--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column 列到新表中

/*select identity(int, 1, 1) as column_name

into newtable

from oldtable*/

ISDATE() --函数判断所给定的表达式是否为合理日期

ISNULL(, ) --函数将表达式中的NULL

值用指定值替换

ISNUMERIC() --函数判断所给定的表达式是否为合理的数值

NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值

NULLIF(, )

--NULLIF 函数在expression1 与expression2 相等时返回NULL

值若不相等时则返回expression1 的值

sql中的保留字

action add aggregate all

alter after and as

asc avg avg_row_length auto_increment

between bigint bit binary

blob bool both by

cascade case char character

change check checksum column

columns comment constraint create

cross current_date current_time current_timestamp

data database databases date

datetime day day_hour day_minute

day_second dayofmonth dayofweek dayofyear

dec decimal default delayed

delay_key_write delete desc describe

distinct distinctrow double drop

end else escape escaped

enclosed enum explain exists

fields file first float

float4 float8 flush foreign

from for full function

global grant grants group

having heap high_priority hour

hour_minute hour_second hosts identified

ignore in index infile

inner insert insert_id int

integer interval int1 int2

int3 int4 int8 into

if is isam join

key keys kill last_insert_id

leading left length like

lines limit load local

lock logs long longblob

longtext low_priority max max_rows

match mediumblob mediumtext mediumint

middleint min_rows minute minute_second

modify month monthname myisam

natural numeric no not

null on optimize option

optionally or order outer

outfile pack_keys partial password

precision primary procedure process

processlist privileges read real

references reload regexp rename

replace restrict returns revoke

rlike row rows second

select set show shutdown

smallint soname sql_big_tables sql_big_selects

sql_low_priority_updates sql_log_off sql_log_update

sql_select_limit

sql_small_result sql_big_result sql_warnings straight_join starting status string table

tables temporary terminated text

then time timestamp tinyblob

tinytext tinyint trailing to

type use using unique

unlock unsigned update usage

values varchar variables varying

varbinary with write when

where year year_month zerofill

--WAITFOR

--例等待1 小时2 分零3 秒后才执行SELECT 语句

waitfor delay ’01:02:03’

select * from employee

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

waitfor time ’23:08:00’

select * from employee

***SELECT***

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

ex:(宿主)

select * from stock_information where stockid = str(nid)

stockname = 'str_name'

stockname like '% find this %'

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

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

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

or stockpath = 'stock_path'

or stocknumber < 1000

and stockindex = 24

not 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

***delete***

delete from table_name where Stockid = 3

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

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

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

null .....

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

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

varchar(30))

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

alter table table_name drop constraint Stockname_default ----

删除Stockname的default约束

***function(/*常用函数*/)***

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

AVG --求平均值

COUNT --统计数目

MAX --求最大值

MIN --求最小值

SUM --求和

--AVG

use pangu

select avg(e_wage) as dept_avgWage

from employee

group by dept_id

--MAX

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

use pangu

select e_name

from employee

where e_wage =

(select max(e_wage)

from employee)

--STDEV()

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

--STDEVP()

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

--VAR()

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

--VARP()

--VARP()函数返回总体变异数

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

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

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

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

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

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

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

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

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

ATAN(float_expression) --返回正切是FLOAT 值的以弧度表示的角

ATAN2(float_expression1,float_expression2)

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

DEGREES(numeric_expression)

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

--INTEGER/MONEY/REAL/FLOAT 类型

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

--INTEGER/MONEY/REAL/FLOAT 类型

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

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

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

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

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

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

--INTEGER/MONEY/REAL/FLOAT 类型

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

--INTEGER/MONEY/REAL/FLOAT 类型

ROUND(numeric_expression) --返回以integer_expression

为精度的四舍五入值返回的数据

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

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

--INTEGER/MONEY/REAL/FLOAT 类型

SIGN(numeric_expression) --测试参数的正负号返回0 零值1 正数或-1 负数返回的数据类型

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

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

RAND([integer_expression]) --用任选的[integer_expression]做种子值得出0-1

间的随机浮点数

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

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() ( AS [ length ])

CONVERT() 函数语法如下

CONVERT() ([ length ], [, 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( , ,)

--函数返回指定日期date 加上指定的额外日期间隔number 产生的新日期

DATEDIFF( , ,)

--函数返回两个指定日期在datepart 方面的不同之处

DATENAME( , ) --函数以字符串的形式返回日期的指定部分 DATEPART( , ) --函数以整数值的形式返回日期的指定部分 GETDATE() --函数以DATETIME 的缺省格式返回系统当前的日期和时间

----系统函数----

APP_NAME() --函数返回当前执行的应用程序的名称

COALESCE() --函数返回众多表达式中第一个非NULL 表达式的值

COL_LENGTH(<'table_name'>, <'column_name'>) --函数返回表中指定字段的长度值

COL_NAME(, ) --函数返回表中指定字段的名称即列名 DATALENGTH() --函数返回数据表达式的数据的实际长度

DB_ID(['database_name']) --函数返回数据库的编号

DB_NAME(database_id) --函数返回数据库的名称

HOST_ID() --函数返回服务器端计算机的名称

HOST_NAME() --函数返回服务器端计算机的名称

IDENTITY([, seed increment]) [AS column_name])

--IDENTITY() 函数只在SELECT INTO 语句中使用用于插入一个identity column 列到新表中

/*select identity(int, 1, 1) as column_name

into newtable

from oldtable*/

ISDATE() --函数判断所给定的表达式是否为合理日期

ISNULL(, ) --函数将表达式中的NULL

值用指定值替换

ISNUMERIC() --函数判断所给定的表达式是否为合理的数值

NEWID() --函数返回一个UNIQUEIDENTIFIER 类型的数值

NULLIF(, )

--NULLIF 函数在expression1 与expression2 相等时返回NULL

值若不相等时则返回expression1 的值

sql中的保留字

action add aggregate all

alter after and as

asc avg avg_row_length auto_increment

between bigint bit binary

blob bool both by

cascade case char character

change check checksum column

columns comment constraint create

cross current_date current_time current_timestamp

data database databases date

datetime day day_hour day_minute

day_second dayofmonth dayofweek dayofyear

dec decimal default delayed

delay_key_write delete desc describe

distinct distinctrow double drop

end else escape escaped

enclosed enum explain exists

fields file first float

float4 float8 flush foreign

from for full function

global grant grants group

having heap high_priority hour

hour_minute hour_second hosts identified

ignore in index infile

inner insert insert_id int

integer interval int1 int2

int3 int4 int8 into

if is isam join

key keys kill last_insert_id

leading left length like

lines limit load local

lock logs long longblob

longtext low_priority max max_rows

match mediumblob mediumtext mediumint

middleint min_rows minute minute_second

modify month monthname myisam

natural numeric no not

null on optimize option

optionally or order outer

outfile pack_keys partial password

precision primary procedure process

processlist privileges read real

references reload regexp rename

replace restrict returns revoke

rlike row rows second

select set show shutdown

smallint soname sql_big_tables sql_big_selects

sql_low_priority_updates sql_log_off sql_log_update

sql_select_limit

sql_small_result sql_big_result sql_warnings straight_join starting status string table

tables temporary terminated text

then time timestamp tinyblob

tinytext tinyint trailing to

type use using unique

unlock unsigned update usage

values varchar variables varying varbinary with write when

where year year_month zerofill

SQL查询语句大全集锦(超经典)

SQL查询语句大全集锦 MYSQL查询语句大全集锦 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的 表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 复制内容到剪贴板 代码:SELECT `nickname`,`email`FROM `testtable`WHERE `name`='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: 复制内容到剪贴板 代码:SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: 复制内容到剪贴板 代码:SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题:

复制内容到剪贴板 代码:SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认 为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: 复制内容到剪贴板 代码:SELECT TOP 2 * FROM `testtable` 复制内容到剪贴板 代码:SELECT TOP 20 PERCENT * FROM `testtable` (二) FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图, 它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: 复制内容到剪贴板 代码:SELECT `username`,citytable.cityid FROM `usertable`,`citytable` WHERE usertable.cityid=citytable.cityid在FROM子句中可用以下两种格式为表或视图指定别名: 复制内容到剪贴板 代码:表名 as 别名 表名别名例如上面语句可用表的别名格式表示为: 复制内容到剪贴板

常用SQL语句大全

常用SQL语句大全 一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 DROP database dbname 3、说明:备份sql server --- 创建备份数据的device 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 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 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 11、说明:几个高级查询运算词

数据库SQL查询语句大全修订稿

数据库S Q L查询语句 大全 公司标准化编码 [QQX96QT-XQQB89Q8-NQQJ6Q8-MQM9N]

经典SQL查询语句大全 一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\' --- 开始备份 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 definitio n only 5、说明:删除新表 drop table tabname 6、说明:增加一个列 Alter table tabname add column col type

注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 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 11、说明:几个高级查询运算词 A:UNION 运算符

SQL Server2000常用语句

SQL Server 2000常用命令,语法使用方法 (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搜索语句

SQL查询语句大全集锦 一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和WHERE子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。 例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。 代码:SELECT `nickname`,`email`FROM `testtable`WHERE `name`='张三' (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列 例如,下面语句显示testtable表中所有列的数据: 代码:SELECT * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如: 代码:SELECT nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名 列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列 标题: 代码:SELECT 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 SELECT语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINCT选项时,对于所有重复的数据行在SELECT返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n 是 表示一百分数,指定返回的行数等于总行数的百分之几。 例如: 代码:SELECT TOP 2 * FROM `testtable` 代码:SELECT TOP 20 PERCENT * FROM `testtable` (二) FROM子句 FROM子句指定SELECT语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列 所属的表或视图。例如在usertable和citytable表中同时存在cityid列,在查询两个表中的cityid时应

SQL SEVER 常用语句

整理了一下,希望对大家有用 SQL语句大全 --语句功能 --数据操作 SELECT --从数据库表中检索数据行和列INSERT --向数据库表添加新数据行 DELETE --从数据库表中删除数据行 UPDATE --更新数据库表中的数据 --数据定义 CREATE TABLE --创建一个数据库表 DROP TABLE --从数据库中删除表 ALTER TABLE --修改数据库表结构 CREATE VIEW --创建一个视图 DROP VIEW --从数据库中删除视图 CREATE INDEX --为数据库表创建一个索引DROP INDEX --从数据库中删除索引 CREATE PROCEDURE --创建一个存储过程 DROP PROCEDURE --从数据库中删除存储过程CREATE TRIGGER --创建一个触发器 DROP TRIGGER --从数据库中删除触发器CREATE SCHEMA --向数据库添加一个新模式DROP SCHEMA --从数据库中删除一个模式CREATE DOMAIN --创建一个数据值域 ALTER DOMAIN --改变域定义 DROP DOMAIN --从数据库中删除一个域 --数据控制 GRANT --授予用户访问权限 DENY --拒绝用户访问 REVOKE --解除用户访问权限 --事务控制 COMMIT --结束当前事务 ROLLBACK --中止当前事务 SET TRANSACTION --定义当前事务数据访问特征--程序化SQL DECLARE --为查询设定游标 EXPLAN --为查询描述数据访问计划 OPEN --检索查询结果打开一个游标 FETCH --检索一行查询结果 CLOSE --关闭游标 PREPARE --为动态执行准备SQL 语句EXECUTE --动态地执行SQL 语句 DESCRIBE --描述准备好的查询

数据库经典SQL语句大全

数据库经典SQL语句大全 篇一:经典SQL语句大全 下列语句部分是Mssql语句,不可以在access中使用。 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 --- 创建备份数据的 device USE master EXEC sp_addumpdevice 'disk','testBack', 'c:mssql7backupMyNwind_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、说明: 删除新表: tabname 6、说明: 增加一个列:Alter table tabname add column col type 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 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 注:索引是不可更改的,想更改必须删除重新建。

SQL常用语句与解释

SQL常用语句与解释 (1)数据记录筛选: sql="select * from 数据表where 字段名=字段值order by 字段名[desc]" //从数据表中读取“字段名=字段值”的所有字段并根据字段名排序【倒序】sql="select * from 数据表where 字段名like '%字段值%' order by 字段名[desc]" //从数据表中读取“字段名中包含字段值”的所有字段并根据字段名排序【倒序】sql="select top10 * from 数据表where 字段名=字段值order by 字段名[desc]" //从数据表中读取前10条满足“字段名=字段值”的所有字段并根据字段名排序【倒序】 sql="select * from 数据表where 字段名in('值1','值2','值3')" //从数据表中读取“字段名满足三个值中的一个”的所有字段 (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…)" //将值1,值2,值3...插入数据表的字段1,字段2,字段3... sql="insert into 目标数据表select * from 源数据表" //把源数据表的记录添加到目标数据表 (5)数据记录统计函数: AVG(字段名)//得出一个表格某个字段的平均值 COUNT(*|字段名)//对数据行数的统计或对某一字段有值的数据行数统计 MAX(字段名)//取得一个表格中某字段的最大值 MIN(字段名)//取得一个表格中某字段的最小值 SUM(字段名)//取得一个表格中某字段的总和 引用以上函数的方法: sql="select sum(字段名) as 别名from 数据表where 条件表达式" //别名是为了引用的需要

sql查询语句大全

SQL查询语句大全 《SQL语句的基本语法》 一.Select语句的完整语法为: Select[ALL|DISTINCT|DISTINCTROW|TOP] {*|talbe.*|[table.]field1[AS alias1][,[table.]field2[AS alias2][,…]]} FROM tableexpression[,…][IN externaldatabase] [Where…] [GROUP BY…] [HAVING…] [ORDER BY…] [WITH OWNERACCESS OPTION] 说明: 用中括号([])括起来的部分表示是可选的,用大括号({})括起来的部分是表示必须从中选择其中的一个。 1 FROM子句 FROM子句指定了Select语句中字段的来源。FROM子句后面是包含一个或多个的表达式(由逗号分开),其中的表达式可为单一表名称、已保存的查询或 由 INNER JOIN、LEFT JOIN 或 RIGHT JOIN 得到的复合结果。如果表或查询存储在外部数据库,在IN 子句之后指明其完整路径。 例:下列SQL语句返回所有有定单的客户: Select orderID,Customer.customerID FROM orders Customers Where orders.CustomerID=Customers.CustomeersID 2 ALL、DISTINCT、DISTINCTROW、TOP谓词 (1) ALL 返回满足SQL语句条件的所有记录。如果没有指明这个谓词,默认为ALL。 例:Select ALL FirstName,LastName FROM Employees (2) DISTINCT 如果有多个记录的选择字段的数据相同,只返回一个。 (3) DISTINCTROW 如果有重复的记录,只返回一个 (4) TOP显示查询头尾若干记录。也可返回记录的百分比,这是要用 TOP N PERCENT子句(其中N 表示百分比) 例:返回5%定货额最大的定单 Select TOP 5 PERCENT* FROM [ order Details] orDER BY UnitPrice*Quantity*(1-Discount) DESC 3 用 AS 子句为字段取别名 如果想为返回的列取一个新的标题,或者,经过对字段的计算或总结之后,产生了一个新的值,希望把它放到一个新的列里显示,则用AS保留。 例:返回FirstName字段取别名为NickName Select FirstName AS NickName ,LastName ,City

SQL常用语句及函数方法

1、通常用到的字符串转日期格式 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06 Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16 Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06 Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06 Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06 Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06 Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06 Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46 Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06 Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16 Select CONVERT(varchar(100), GETDATE(), 12): 060516 Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937 Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967 Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47 Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157 Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16 Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47

SQL语句大全实例

SQL语句实例 表操作 例 1 对于表的教学管理数据库中的表STUDENTS ,可以定义如下:CREATE TABLE STUDENTS (SNO NUMERIC (6, 0) NOT NULL SNAME CHAR (8) NOT NULL AGE NUMERIC(3,0) SEX CHAR(2) BPLACE CHAR(20) PRIMARY KEY(SNO)) 例 2 对于表的教学管理数据库中的表ENROLLS ,可以定义如下: CREATE TABLE ENROLLS (SNO NUMERIC(6,0) NOT NULL CNO CHAR(4) NOT NULL GRADE INT PRIMARY KEY(SNO,CNO) FOREIGN KEY(SNO) REFERENCES STUDENTS(SNO) FOREIGN KEY(CNO) REFERENCES COURSES(CNO) CHECK ((GRADE IS NULL) OR (GRADE BETWEEN 0 AND 100))) 例 3 根据表的STUDENTS 表,建立一个只包含学号、姓名、年龄的女学生表。 CREATE TABLE GIRL

AS SELECT SNO, SNAME, AGE FROM STUDENTS WHERE SEX=' 女'; 例 4 删除教师表TEACHER 。 DROP TABLE TEACHER 例 5 在教师表中增加住址列。 ALTER TABLE TEACHERS ADD (ADDR CHAR(50)) 例 6 把STUDENTS 表中的BPLACE 列删除,并且把引用BPLACE 列的所有视图和约束也一起删除。 ALTER TABLE STUDENTS DROP BPLACE CASCADE 例7 补充定义ENROLLS 表的主关键字。 ALTER TABLE ENROLLS ADD PRIMARY KEY (SNO,CNO) ; 视图操作(虚表) 例9 建立一个只包括教师号、姓名和年龄的视图FACULTY 。( 在视图定义中不能包含ORDER BY 子句) CREATE VIEW FACULTY AS SELECT TNO, TNAME, AGE FROM TEACHERS 例10 从学生表、课程表和选课表中产生一个视图GRADE_TABLE ,它包括学生姓名、课程名和成绩。 CREATE VIEW GRADE_TABLE AS SELECT SNAME,CNAME,GRADE FROM STUDENTS,COURSES,ENROLLS WHERE STUDENTS.SNO =ENROLLS.SNO AND https://www.sodocs.net/doc/977244319.html,O=https://www.sodocs.net/doc/977244319.html,O 例11 删除视图GRADE_TABLE DROP VIEW GRADE_TABLE RESTRICT 索引操作 例12 在学生表中按学号建立索引。 CREATE UNIQUE INDEX ST ON STUDENTS (SNO,ASC) 例13 删除按学号所建立的索引。 DROP INDEX ST 数据库模式操作

50个经典SQL查询语句

--一个题目涉及到的50个Sql语句 --(下面表的结构以给出,自己在数据库中建立表.并且添加相应的数据,数据要全面些. 其中Student表中,SId为学生的ID) ------------------------------------表结构-------------------------------------- --学生表tblStudent(编号StuId、姓名StuName、年龄StuAge、性别StuSex) --课程表tblCourse(课程编号CourseId、课程名称CourseName、教师编号TeaId) --成绩表tblScore(学生编号StuId、课程编号CourseId、成绩Score) --教师表tblTeacher(教师编号TeaId、姓名TeaName) --------------------------------------------------------------------------------- --1、查询“001”课程比“002”课程成绩高的所有学生的学号; Select StuId From tblStudent s1 Where (Select Score From tblScore t1 Where t1.StuId=s1.stuId And t1.CourseId='001')> (Select Score From tblScore t2 Where t2.StuId=s1.stuId And t2.CourseId='002') --2、查询平均成绩大于60分的同学的学号和平均成绩; Select StuId,Avg(Score) as AvgScore From tblScore Group By StuId Having Avg(Score)>60 --3、查询所有同学的学号、姓名、选课数、总成绩; Select StuId,StuName, SelCourses=(Select Count(CourseId) From tblScore t1 Where t1.StuId=s1.StuId), SumScore=(Select Sum(Score) From tblScore t2 Where t2.StuId=s1.StuId) From tblStudent s1 --4、查询姓“李”的老师的个数; Select Count(*) From tblTeacher Where TeaName like '李%' --5、查询没学过“叶平”老师课的同学的学号、姓名; Select StuId,StuName From tblStudent Where StuId Not In ( Select StuID From tblScore sc Inner Join tblCourse cu ON sc.CourseId=cu.CourseId Inner Join tblTeacher tc ON cu.TeaId=tc.TeaId Where tc.TeaName='叶平' ) --6、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名; Select StuId,StuName From tblStudent st Where (Select Count(*) From tblScore s1 Where s1.StuId=st.StuId And

SQL数据库查询语句范例

推荐一、简单查询 简单的Transact-SQL查询只包括选择列表、FROM子句和Where子句。它们分别说明所查询列、查询的表或视图、以及搜索条件等。例如,下面的语句查询testtable表中姓名为“张三”的nickname字段和email字段。Select nickname,email FROM testtable Where n ame=’张三’ (一) 选择列表 选择列表(select_list)指出所查询列,它可以是一组列名列表、星号、表达式、变量(包括局部变量和全局变量)等构成。 1、选择所有列例如,下面语句显示testtable表中所有列的数据:Select * FROM testtable 2、选择部分列并指定它们的显示次序 查询结果集合中数据的排列顺序与选择列表中所指定的列名排列顺序相同。 例如:Select nickname,email FROM testtable 3、更改列标题 在选择列表中,可重新指定列标题。定义格式为: 列标题=列名列名列标题 如果指定的列标题不是标准的标识符格式时,应使用引号定界符,例如,下列语句使用汉字显示列标题: Select 昵称=nickname,电子邮件=email FROM testtable 4、删除重复行 Select语句中使用ALL或DISTINCT选项来显示表中符合条件的所有行或删除其中重复的数据行,默认为ALL。使用DISTINC T选项时,对于所有重复的数据行在Select返回的结果集合中只保留一行。 5、限制返回的行数 使用TOP n [PERCENT]选项限制返回的数据行数,TOP n说明返回n行,而TOP n PERCENT时,说明n是表示一百分数,指定返回的行数等于总行数的百分之几。例如: Select TOP 2 *FROM testtable Select TOP 20 PERCENT * FROM testtable (二) FROM子句 FROM子句指定Select语句查询及与查询相关的表或视图。在FROM子句中最多可指定256个表或视图,它们之间用逗号分隔。 在FROM子句同时指定多个表或视图时,如果选择列表中存在同名列,这时应使用对象名限定这些列所属的表或视图。例如在usertable和cityta ble表中同时存在cityid列,在查询两个表中的cityid时应使用下面语句格式加以限定: Select username,citytable.cityid FROM usertable,citytable Where usertable.cityid=citytable.cityid 在FROM子句中可用以下两种格式为表或视图指定别名: 表名 as 别名表名别名

oracle 经典SQL语句大全

一、基础 1、说明:创建数据库 CREATE DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建备份数据的 device 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 注:列增加后将不能删除。DB2中列加上后数据类型也不能改变,唯一能改变的是增加varchar类型的长度。 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

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 --定义当前事务数据访问特征 --程序化SQL DECLARE --为查询设定游标 EXPLAN --为查询描述数据访问计划 OPEN --检索查询结果打开一个游标

50个常用sql语句实例(学生表 课程表 成绩表 教师表)

Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 create table Student(S# varchar(20),Sname varchar(10),Sage int,Ssex varchar(2)) 前面加一列序号: if exists(select table_name from information_schema.tables where table_name='Temp_Table') drop table Temp_Table go select 排名=identity(int,1,1),* INTO Temp_Table from Student go select * from Temp_Table go drop database [ ] --删除空的没有名字的数据库 问题: 1、查询“”课程比“”课程成绩高的所有学生的学号; select a.S# from (select s#,score from SC where C#='001') a,(select s#,score from SC where C#='002') b where a.score>b.score and a.s#=b.s#; 2、查询平均成绩大于分的同学的学号和平均成绩; select S#,avg(score) from sc group by S# having avg(score) >60; 3、查询所有同学的学号、姓名、选课数、总成绩; select Student.S#,Student.Sname,count(SC.C#),sum(score) from Student left Outer join SC on Student.S#=SC.S# group by Student.S#,Sname 4、查询姓“李”的老师的个数; select count(distinct(Tname)) from Teacher where Tname like '李%'; 5、查询没学过“叶平”老师课的同学的学号、姓名; select Student.S#,Student.Sname from Student

相关主题