SQL SERVER 3 T-SQL编程与高级查询
2013-05-02 09:44
399 查看
1、T-SQL 与 SQL
SQL 第四代编程语言 你只需要告诉计算机你要做什么事情 例: select updateT-SQL 附加了第二代编程语言的特性,比如 流程控制(if-else while) 错误处理 存储过程 事物 触发器
2、 SQL 注释
-- 单行注释 /* */ 多行注释3、批处理
10条插入语句 不加go批处理关键字的话 sql引擎 会一条一条处理(会影响效率)加go批处理关键字的话 sql引擎 会一次性处理(提高处理效率)
4、 变量
分为 全局变量 @@(系统定义) 和 局部变量 @(1)变量定义 declare @变量名 变量数据类型
示例 declare @count int,@count2 int
declare @count1 int
(2)变量赋值 set select
示例: set @count = 1 赋值只能一种
select @count = 1 赋值一般配合查询
例: select @name = StuName from student where StuNo = 'S25301'
(3) 在加go关键字以前,存储过程结束以前 变量 都是起作用的
(4)常用的全局变量 @@ERROR @@IDENTITY @@ROWCOUNT
5、输出
print 字符串 |变量| 函数| 字符串表达式6、流程控制语句
(1) if-elseif(判断条件)
begin
语句1
语句2
end
else
begin
语句1
语句2
end
(2) case
-- 简单格式
select pcid,
case PCUse
when 0 then '空闲'
when 1 then '忙碌'
end as 'pcuse'
,pcnote from pcinfo
-- 搜索格式
select pcid,
case
when PCUse = 0 then '空闲'
when PCUse = 1 then '忙碌'
end as 'pcuse'
,pcnote from PCInfo
(3) while
while (循环成立的条件)
语句xxx
[break]
[continue]
示例:
declare @count int
while(1=1)
begin
select @count = COUNT(*) from cardInfo where cardBalance < 20
if (@count > 0)
update cardInfo set cardBalance = cardBalance + 1 where cardBalance < 20
else
break
end
7 、子查询
合并多个表中的数据的方法合并多个表中的数据的方法:联合(Union)-合并多个数据表中的行
子查询-将一个查询包含到另一个查询中
联接-合并多个数据表中的列
EXISTS子句:
通过在子查询中使用EXISTS子句,可以对子查询中的行是否存在进行检查。
IN子查询:
IN子查询后面可跟随返回多条记录的子查询,用于检测某列的值是否在某个范围。
子查询划分:
使用比较运算符的子查询
IN和NOT IN子查询
EXISTS和NOT EXISTS子查询。
子查询若按所处位置划分,可以为子查询在WHERE关键字之后,子查询在FROM关键字之后、子查询在SELECT关键字之后。
相关文章推荐
- T_SQL 语句编程与高级查询
- T-SQL查询高级—SQL Server索引中的碎片和填充因子
- SQL Server Transact-SQL高级查询
- SQL Server Transact-SQL高级查询
- sql server 常用高级查询sql
- SQL Server 2000 之SQL语言编程内容提要之三SQL语言查询讨论提要之一
- T-SQL查询高级—SQL Server索引中的碎片和填充因子
- SQL Server 2000 之SQL语言编程内容提要之三SQL语言查询功能讨论
- T-SQL编程高级查询
- T-SQL查询高级—SQL Server索引中的碎片和填充因子
- T-SQL查询高级—SQL Server索引中的碎片和填充因子
- T-SQL编程与高级查询
- T-SQL 编程与高级查询
- T-SQL编程与高级查询
- SQL编程之高级查询(子查询)以及注意事项
- T-SQL查询高级—SQL Server索引中的碎片和填充因子
- SQL SERVER T-SQL编程与高级查询
- ORACLE SQL 高级编程--查询转换
- T-SQL编程与高级查询
- SQL编程之高级查询(子查询)以及注意事项