我的编程空间,编程开发者的网络收藏夹
学习永远不晚

SQLServerTransact-SQL编程详解

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

SQLServerTransact-SQL编程详解

T-SQL语句用于管理SQL Server数据库引擎实例,创建和管理数据库对象,以及查询、插入、修改和删除数据。

变量

1、 局部变量(Local Variable)

局部变量是用户可以自定义的变量,它的作用范围是仅在程序内部,在程序中通常用来储存从表中查询到的数据或当做程序执行过程中的暂存变量。使用局部变量必须以@开头,而且必须用declare命令后才能使用。

基本语法:

声明变量
declare @变量名 变量类型 [@变量名 变量类型]
为变量赋值
set @变量名 = 变量值;
select @变量名 = 变量值;

示例:

--局部变量
declare @id char(10)--声明一个长度的变量id
declare @age int    --声明一个int类型变量age
    select @id = 22    --赋值操作
    set @age = 55    --赋值操作
    print convert(char(10), @age) + '#' + @id
    select @age, @id
go
简单hello world示例
declare @name varchar(20);
declare @result varchar(200);
set @name = 'jack';
set @result = @name + ' say: hello world!';
select @result;
查询数据示例
declare @id int, @name varchar(20);
set @id = 1;
select @name = name from student where id = @id;
select @name;
select赋值
declare @name varchar(20);
select @name = 'jack';
select * from student where name = @name;

从上面的示例可以看出,局部变量可用于程序中保存临时数据、传递数据。Set赋值一般用于赋值指定的常量个变量。而select多用于查询的结果进行赋值,当然select也可以将常量赋值给变量。

注意:在使用select进行赋值的时候,如果查询的结果是多条的情况下,会利用最后一条数据进行赋值,前面的赋值结果将会被覆盖。

2、 全局变量(Global Variable)

全局变量是系统内部使用的变量,其作用范围并不局限于某一程序而是任何程序均可随时调用的。全局变量一般存储一些系统的配置设定值、统计数据。

--局部变量
declare @id char(10)--声明一个长度的变量id
declare @age int    --声明一个int类型变量age
    select @id = 22    --赋值操作
    set @age = 55    --赋值操作
    print convert(char(10), @age) + '#' + @id
    select @age, @id
go
简单hello world示例
declare @name varchar(20);
declare @result varchar(200);
set @name = 'jack';
set @result = @name + ' say: hello world!';
select @result;
查询数据示例
declare @id int, @name varchar(20);
set @id = 1;
select @name = name from student where id = @id;
select @name;
select赋值
declare @name varchar(20);
select @name = 'jack';
select * from student where name = @name;

输出语句

T-SQL支持输出语句,用于显示结果。常用输出语句有两种:

基本语法

print 变量或表达式
select 变量或表达式

示例

select 1 + 2;
select @@language;
select user_name();
print 1 + 2;
print @@language;
print user_name();

print在输出值不少字符串的情况下,需要用convert转换成字符串才能正常输出,而且字符串的长度在超过8000的字符以后,后面的将不会显示。

逻辑控制语句

1、 if-else判断语句

语法

if <表达式>
    <命令行或程序块>
else if <表达式>
    <命令行或程序块>
else
    <命令行或程序块>

示例

if简单示例
if 2 > 3
    print '2 > 3';
else
    print '2 < 3';
if (2 > 3)
    print '2 > 3';
else if (3 > 2)
    print '3 > 2';
else
    print 'other';
简单查询判断
declare @id char(10),
        @pid char(20),
        @name varchar(20);
set @name = '广州';
select @id = id from ab_area where areaName = @name;
select @pid = pid from ab_area where id = @id;
print @id + '#' + @pid;
if @pid > @id
    begin
        print @id + '%';
        select * from ab_area where pid like @id + '%';
    end
else
    begin
        print @id + '%';
        print @id + '#' + @pid;
        select * from ab_area where pid = @pid;
    end
go

2、 while…continue…break循环语句

基本语法

while <表达式>
begin
   <命令行或程序块>
   [break]
   [continue]
   <命令行或程序块>
end

示例

--while循环输出到
declare @i int;
    set @i = 1;
while (@i < 11)
    begin
        print @i;
        set @i = @i + 1;
    end
go
--while continue 输出到
declare @i int;
    set @i = 1;
while (@i < 11)
    begin                
        if (@i < 5)
            begin
                set @i = @i + 1;
                continue;        
            end
        print @i;
        set @i = @i + 1;                
    end
go
--while break 输出到
declare @i int;
    set @i = 1;
while (1 = 1)
    begin        
        print @i;        
        if (@i >= 5)
            begin
                set @i = @i + 1;
                break;        
            end        
        set @i = @i + 1;                
    end
go

3、 case

基本语法

case
   when <条件表达式> then <运算式>
   when <条件表达式> then <运算式>
   when <条件表达式> then <运算式>
   [else <运算式>]
end

示例

select *,
    case sex 
        when 1 then '男'
        when 0 then '女'    
        else '火星人'
    end as '性别'
from student;
select areaName, '区域类型' = case
        when areaType = '省' then areaName + areaType
        when areaType = '市' then 'city'
        when areaType = '区' then 'area'
        else 'other'
    end
from ab_area;

4、 其他语句

批处理语句go
Use master
Go
延时执行,类似于定时器、休眠等
waitfor delay '00:00:03';--定时三秒后执行
print '定时三秒后执行';

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

SQLServerTransact-SQL编程详解

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

JavaSocket编程详解

JavaSocket编程是指使用Java语言进行网络通信的过程,包括建立连接、传输数据和关闭连接等操作,本文将详细介绍JavaSocket编程,需要的朋友可以参考下
2023-05-19

T-SQL编程

T-SQL(Transact-SQL)是一种 SQL 扩展语言,由微软实现,运行在 Ms SQL Server 平台上。T-SQL 主要用来和SQL Server 交流,而查询语句则主要用来告诉服务器该做什么。T-SQL 是标准 SQL 语言的扩展,自然也继承
T-SQL编程
2019-09-22

Java 网络编程socket编程等详解

网络编程是指编写运行在多个设备(计算机)的程序,这些设备都通过网络连接起来。java.net包中J2SE的API包含有类和接口,它们提供低层次的通信细节。你可以直接使用这些类和接口,来专注于解决问题,而不用关注通信细节。java.net包中
2023-05-31

Python网络编程详解

1、服务器就是一系列硬件或软件,为一个或多个客户端(服务的用户)提供所需的“服务”。它存在唯一目的就是等待客户端的请求,并响应它们(提供服务),然后等待更多请求。2、客户端/服务器架构既可以应用于计算机硬件,也可以应用于计算机软件。3、在服
2022-06-04

Golang编译过程详解

Golang编译过程详解Golang(也称为Go)是一种由Google开发的编程语言,它具有简洁、高效、并发等特点,因此受到了广泛的关注和应用。在使用Golang进行编程时,编译是一个非常重要的环节,本文将详细介绍Golang的编译过程,
Golang编译过程详解
2024-03-07

java并发编程详解

一.synchronized的缺陷synchronized是java中的一个关键字,也就是说是Java语言内置的特性。那么为什么会出现Lock呢?如果一个代码块被synchronized修饰了,当一个线程获取了对应的锁,并执行该代码块时,其他线程便只能一直等待
java并发编程详解
2016-07-17

TCP Socket 编程原理详解

TCP(传输控制协议)是一种面向连接的、可靠的传输协议,它通过建立一条虚拟的、全双工的通信管道来实现数据的可靠传输。在TCP Socket编程中,需要了解以下几个关键概念和原理:1. Socket:Socket是一种通信的接口,它定义了数据
2023-09-01

详解Python Socket网络编程

Socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 Socket 来完成通信的,例如我们每天浏览网页、QQ 聊天、收发 email 等等。要解决网络
2022-06-04

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录