SQL控制语句基础
SQL变量
全局变量:
全局变量是由系统定义和维护的使用两个@作为前缀,不能由用户声明和赋值!
常用的全局变量如下
@@version :获取当前使用的SQL Server版本号
EG:
select @@version
显示信息:
-----------------------------------------------------------------------------------------------------------------------------------------Microsoft SQL Server 2008 R2 (RTM) - 10.50.1600.1 (X64)
Apr 2 2010 15:48:46
Copyright (c) Microsoft Corporation
Enterprise Edition (64-bit) on Windows NT 6.2 <X64> (Build 9200: )
@@identity :上条SQL语句返回的标识列的值
EG:
insert into hous(name,price )
values('房间一',299)
select @@IDENTITY as 标识列
显示信息:
(1 行受影响)
标识列
---------------------------------------
5
(1 行受影响)
@@rowcount:返回上条SQL语句的受影响行数
insert into hous(name,price )
values('房间一',299)
select @@rowcount as 受影响行数
显示信息:
(1 行受影响)
受影响行数
-----------
1
(1 行受影响)
@@servername:本地服务器的名称
EG:
select @@servername
显示信息:
--------------------------------------------------------------------------------------------------------------------------------
DESKTOP-M5OLTTN
(1 行受影响)
@@error:最后一条sql错误的错误号
EG:
insert into hous(name,price )
values('房间一')
select @@ERROR as 错误号
显示结果:
消息 109,级别 15,状态 1,第 1 行
INSERT 语句中列的数目大于 VALUES 子句中指定的值的数目。VALUES 子句中值的数目必须与 INSERT 语句中指定的列的数目匹配。
错误号
-----------
109
(1 行受影响)
@@servicename:该计算机上的SQL服务器的名称
EG:
select @@servicename
显示结果:
--------------------------------------------------------------------------------------------------------------------------------
MSSQLSERVER
(1 行受影响)
@@language:当前使用的语言的名称
EG:
select @@language
显示结果:
--------------------------------------------------------------------------------------------------------------------------------
简体中文
(1 行受影响)
@@max_connections:可以创建的同时连接的最大数目
EG:
select @@MAX_CONNECTIONS
显示结果:
-----------
32767
(1 行受影响)
@@timeticks:当前计算机上每刻度的微秒数
EG:
select @@timeticks
显示结果:
-----------
31250
(1 行受影响)
@@trancount:当前连接打开的事务数
EG:
select @@TRANCOUNT
显示结果:
-----------
0
(1 行受影响)
局部变量
声明语法:
declare @variable datatype
其中,variable为局部变量的名称,datatype为数据类型
赋值语法:
局部变量有两种复制方式
1.set @variable = value
2.select @variable=value
set和select的区别
select语句一般用于将表中的数据赋给变量
set语句不支持将表中的数据赋给变量
提示:
给一个变量赋值是set比select的效率更高。set不支持同时给多个变量赋值
SQL输出语句
在sql server中有两种输出方式
1.print 局部变量或字符串
2.select 局部变量或字符串
其中select语句输出数据是查询语句的特殊用法
数据类型转换
语法:
Cast(表达式 as 数据类型)
Convert(数据类型,表达式【,样式】)
其中“【】”是可选部分。
逻辑控制语句
begin-end
语法:
Begin
语句或语句块
end
与C#中的“{}”类似,表示语句快的开始和结束。在一个语句块中可以包含另一个语句块
IF-else和while与C#类似这里不再一一说明
Case多分支语句
case 多分支语句也和C#中的是swith选择结构类似也就语法不同
Case的语法:
Case
when 条件1 then 结果1
when 条件2 then 结果2
……
【else 其他结果】
end
其中“【】”是可选部分
值得注意的是:如果省略Else并且when的条件都不为true则返回的结果为null
批处理-go
它是一条或多条SQL语句的集合,也就是一个可执行单元,每个批处理可以编译成单个可执行单元,从而提高可执行效率。如果批处理包含多条SQL语句,则执行这些语句的所有优化步骤将编译在单个执行单元中
SQL控制语句基础的更多相关文章
- SQL server基础知识(表操作、数据约束、多表链接查询)
SQL server基础知识 一.基础知识 (1).存储结构:数据库->表->数据 (2).管理数据库 增加:create database 数据库名称 删除:drop database ...
- 数据库开发基础-SQl Server 基础
SQL Server 基础 1.什么是SQL Server SQL:Structured Query Language 结构化查询语言 SQL Server是一个以客户/服务器(c/s)模式访问.使 ...
- 【SQL Server】SQL Server基础之存储过程
SQL Server基础之存储过程 阅读目录 一:存储过程概述 二:存储过程分类 三:创建存储过程 1.创建无参存储过程 2.修改存储过程 3.删除存储过程 4.重命名存储过程 5.创建带参数的存储 ...
- Sql Server 基础知识
Sql Server 基础知识: http://blog.csdn.net/t6786780/article/details/4525652 Sql Server 语句大全: http://www.c ...
- Oracle数据库编程:PL/SQL编程基础
2.PL/SQL编程基础: PL/SQL块: declare 定义部分 begin 执行部分 exception 异 ...
- Oracle Pl/SQL编程基础
Pl/SQL简介 提高应用程序的运行性能, 提供模块化的程序设计, 自定义标示符, 具有过程语言控制结构, 良好的兼容性, 处理运行错误. Pl/SQL语言基础 sql是关系数据库的基本操作语言. s ...
- SQL Tuning 基础概述10 - 体会索引的常见执行计划
在<SQL Tuning 基础概述05 - Oracle 索引类型及介绍>的1.5小节,提到了几种"索引的常见执行计划": INDEX FULL SCAN:索引的全扫描 ...
- SQL数据库基础知识-巩固篇<一>
SQL数据库基础知识-巩固篇<一>... =============== 首先展示两款我个人很喜欢的数据库-专用于平时个人SQL技术的练习<特点:体积小,好安装和好卸载,功能完全够用 ...
- oracle PL/SQL语法基础
目录 数据类型 定义变量 PL/SQL控制结构 参考资料 Oracle10g数据类型总结 PL/SQL之基础篇 数据类型 学习总结 字符类型 char.nchar.varchar.nvarchar:有 ...
随机推荐
- 2016 提高组c++ 错题
需重做 树的重心 链表 计算机基础知识 无线通讯技术: 蓝牙,wifi,GPRS 现在常用的无线通信技术:FM调频广播(用于收音机): 2G.3G移动通信技术(中国移动.中国联通.中国电信正在运营的网 ...
- Winform WPF 窗体显示位置
WinForm 窗体显示位置 窗体显示的位置首先由窗体的StartPosition决定,FormStartPosition这个枚举值由如下几种情况 // 摘要: // 窗体的位置由 System.Wi ...
- T7316 yyy的最大公约数(者)
题目背景 全场基本暴力 题目描述 输入输出格式 输入格式: 如图 输出格式: 如图 输入输出样例 输入样例#1: 如图 输出样例#1: 如图 说明 如图 这题用到了容斥原理和线性筛的一些东西, 表示没 ...
- PopupWindow实现点击外部不消失
View contentView = LayoutInflater.from(MainActivity.this).inflate(R.layout.alert_ip, null); final Po ...
- GRpc-Go使用笔记
linux下配置GRpc-golang 1.git中下载protobuf包 2.解压(/usr/local/protobuf) unzip protobuf-cpp-3.0.0-alpha-3.z ...
- HDU 1513 Palindrome【LCS】
题意:给出一个字符串s,问至少加入多少个字母让它变成回文串 解题思路:求出该字符串与该字符串翻转后的最长公共子序列的长度,再用该字符串的长度减去最长公共子序列的长度即为所求 反思:因为题目所给的n的范 ...
- 不懂技术也可以轻松开发一款APP
这是个衣食住行都离不开手机的时代,甚至可以说,我们不用考虑其他的东西,只要拿着手机,就可以出门做自己想做的事情. 这就是手机app的强大之处,覆盖面极广,小到聊天交友,大到投资理财.每次都是app为我 ...
- iOS性能优化专题
http://wereadteam.github.io/2016/05/03/WeRead-Performance/ https://www.cnblogs.com/oc-bowen/p/599999 ...
- web_测试用例注意点
测试是一种思维,包括情感思维和智力思维,情感思维主要体现在一句俗语:思想决定行动上(要怀疑一切),智力思维主要体现在测试用例的设计上.具有了这样的思想,就会找出更多的bug.(^_^个人认为,不代表官 ...
- How to debug systemd step by step
docker run -ti --name systemd --net host --privileged reg.docker.xxxxxxxx:latest /usr/lib/systemd/sy ...