概述
select top 1 1 from...主要是用来判断表是否有记录
TRUNCATE
:删除内容、释放空间但不删除定义,保留数据表的结构
删除目标表中所有字段,不影响表结构
派生表:
派生表就是一个由查询结果生成的临时表。他是在外部查询的
FROM
中定义的。派生表的存在范围只是在外部查询中,只要外部查询结束了,派生表也就不存在了。派生表一定要写在
FROM
后面范围内,用()括起来。后面跟着派生表的名称。
select * from(select a,b from table1) as 666
嵌套子查询的用法:
两个
select
的嵌套查询:
select a.GroupInputName from System_GroupInput A where A.GroupInputCode
in (SELECT b.GroupInputCode FROM System_GroupInputList b WHERE b.GroupInputCode='TH_NofityStayList' )
单
select
的嵌套查询:
假设想知道某产品第一天销售产品的
ID
号。又不知道第一天是什么日期。可以用以下的方法查询
:
select A.saledate,A.saleid from saleorderhead A join saleorderdetail B
on A.saleid=B.saleid
where (select min(saledate) from saleorderdetail )
可以用以下的嵌套查询方法
在代码中加入主键(索引)方法:
1.
在创建列的时候创建完列的时候加入
primary key
2.
在创建完所需列之后。在下面加入
constraint
(索引名称)
unique
(关联列
1
,关联列
2
)
HAVING
字句设置
GROUP BY
字句形成分组的条件!
HAVING
接
GROUP BY
后面,在
ORDER BY
前面。
创建外键的方式:
constraint
外键名
foreign key
(需要放数据的列)
references
数据来源表(数据来源表的列明)
TOP
字句
select top 1 (
列名
) from
(表名)
where order by
(列名)(顺序或逆序)
decimal(18,0)
18
是定点精度,
0
是小数位数。
compute by
计算语句。允许在结果集内产生控制中断和小计,得到更为详尽的记录
实用实例{
compute avg|count|max|min|sum
}(表达式)
by
(表达式)
自然连接:一种特殊的等值连接,要求需要连接的两个关系需比较的分列是属性完全相同的项,并且将重复属性列去掉。
谓词
IN
:
在嵌套查询的结果往往是一个结果集。查询结果集就是用
IN
。
可以理解为
’=‘
AS
用法:
一:
as
可以作为别名的标志。
sql
:
select name as username form tablename;
解释:上面语句的意思就是查询出
tablename
表中字段
name
的所有记录,并且给
name
别名为
username
。
SQL CTE(
公用表表达式
)
定义语法:
with
公用表表达式名称
所涉及的列(非全选)
一个
SELECT
语句,在
AS
之后紧跟。
按照是否递归,可以将公用表(
CTE
)表达式分为递归公用表表达式和非递归公用表表达式
.
非递归公用表表达式:
非递归公用表表达式(
CTE
)是查询结果仅仅一次性返回一个结果集用于外部查询调用。并不在其定义的语句中调用其自身的
CTE
非递归公用表表达式(
CTE
)的使用方式和
视图
以及
子查询
一致
递归公用表表达式:
流程控制语句
BEGIN……END语句
格式:BEGIN
语句
~~~
END
IF......ELSE语句
格式:IF
语句
[ELSE[IF条件表达式]
语句
具体用法:
WHILE
循环语句
用法:
WHILE
逻辑表达式
语句
GOTO
语句
GOTO
语句可以使
SQL
语句的执行流程无条件转移到指定的标号位置。常用于
WHILE
和
IF
语句中,做跳出循环用。
GOTO lable
...
lable,
WAITFOR
语句
WAITFOR
语句可以在某一个时间或某一时间间隔之后执行
SQL
语句,语句块,存储过程等。
WAITFOR{DELAY '
时间
'|TIME '
时间
'}
waitfor delay '00:00:10'
select * from test01;
waitfor time '16:00:00'
select * from test01;
case
语句
语法:
case<
表达式
>
when<
条件表达式
1>then<
表达式
1>
when<
条件表达式
2>then<
表达式
2>
......
else<
表达式
n>
--
简单
Case
函数
CASE sex WHEN '1' THEN '
男
' WHEN '2' THEN '
女
' ELSE '
其他
' END --Case
搜索函数
CASE WHEN sex = '1' THEN '
男
' WHEN sex = '2' THEN '
女
' ELSE '
其他
' END
return
语句
return
语句可以使程序从程序或存储过程中返回。并且之后的语句不再执行。
return
整型表达式
变量
变量分局部变量和全局变量,全局变量是用来跟踪服务器作用范围和特定的交互过程的,不能由用户自己定义也不能被显式的赋值或生命,其名称是由
@@
组成的。局部变量是由用户自己定义和赋值的。由
declare
声明。局部变量只能在声明变量的批处理语句或过程体中存在,且首字符为
@
。
declare @aa
数据类型;或
set @aa=
表达式;
最后
以上就是整齐大象为你收集整理的SQL嵌套查询的全部内容,希望文章能够帮你解决SQL嵌套查询所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复