SQL语句大全(提升)

// 复制表结构(不包括主键)
1.CREATE TABLE newTABLE SELECT * FROM oldTABLE WHERE 1=2
// 复制表结构和数据(不包括主键)
2.CREATE TABLE newTABLE SELECT * FROM oldTABLE 
// 子查询
3.SELECT * FROM TABLE1 WHERE 字段 IN(SELECT MIN(字段) FROM TABLE2) //in可以换成'='
// 查询出表1存在于表2中的数据
4.SELECT * FROM TABLE1 where EXISTS(SELECT * FROM TABLE2) 
// 内连接
5.SELECT
	TABLE1.*, TABLE2.*
FROM
	TABLE1
INNER JOIN TABLE2 ON TABLE1.字段 = TABLE2.字段
// 查询范围内的数据
6.SELECT * FROM TABLE where 字段 BETWEEN range1 and  range2
// 查询范围外的数据
7.SELECT * FROM TABLE where 字段 NOT BETWEEN range1 and  range2
// 取前N条数据
8.SELECT * FROM TABLE LIMIT m,n //SELECT TOP 10 * FROM TABLE WHERE 范围(mysql不能使用)
// 随机取N条数据
9.SELECT * FROM TABLE ORDER BY RAND() LIMIT n
// 查询数据库的所有表名及行数
10.SELECT TABLE_NAME,TABLE_ROWS FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA='数据库名称'
// 查询指定数据库中指定表的所有字段名
11.SELECT column_name from information_schema.columns where table_schema='数据库' and table_name='表'
// 用sqlcmd将sql文件导入表
12.sqlcmd -S 服务器名称 -U 帐户 -P 密码 -d 数据库 -i SQL Script
example:sqlcmd -S "HOMESQLEXPRESS" -U "sa" -P "12345678" -d "Database" -i "E:My Documentstest.sql"
//将A表中的数据插入B表(B包含A的数据结构)
13.INSERT INTO DATABASE.DBO.B (字段1,字段2,字段3,...)SELECT 字段1,字段2,字段3,... FROM DATABASE.DBO.A
//Remark:

内连接: 只连接匹配的行

左(外)连接:包含左边表的全部行(不管右边的表中是否存在与它们匹配的行),以及右边表中全部匹配的行

右(外)连接:包含右边表的全部行(不管左边的表中是否存在与它们匹配的行),以及左边表中全部匹配的行

全(外)连接:包含左、右两个表的全部行,不管另外一边的表中是否存在与它们匹配的行.

交叉连接:生成笛卡尔积-它不使用任何匹配或者选取条件,而是直接将一个数据源中的每个行与另一个数据源的每个行都一一匹配.



 

转载于:https://my.oschina.net/Tsher2015/blog/724690

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值