位置: 编程技术 - 正文

SQL语句(T-SQL汇总) 用T-SQL画出这些图形(sql汇总查询)

发布时间:2024-02-26
我个人感觉数据库这方面对于程序员来说很重要,无论是对于JAVA程序员还是DOTNET程序员以及其他编程人员来说都是必须掌握的。为了帮助大家更好的来回顾T-SQL,本人利用空闲的时间整理的一下T-SQL的语句和语法。希望对大家有用!

好的!我们先来看几个图像:

棱形三角形正方形圆形矩形梯形

上面这些图形都是用T-SQL实现的,文章的最后我们一起来用T-SQL画出这些图形。

首先,我们开始回顾一下T-SQL的基本语法:

函数

abs(x):求绝对值;

例:    select abs(-3)   值为:3

sqrt(x):求平方根;

例:    select sqrt(4)    值为:2.0

rand([0]):返回0~1之间的随机float值;

floor(X):返回小于或等于X值的最大整数;

例:    select floor(.5)   值为:

ceiling(X):返回大于或等于X值的最小整数;

例:    select ceiling(.5)  值为:

round(x,length):四舍五入函数,length为正,则对X小数位数四舍五入,length为负,则对X从小数点左边length位起四舍五入,若length既为负数且其绝对值大于X整数部分 数字个数,则函数值为0;

例:    select ROUND(., 1)     值为:.      select ROUND(., -1)    值为:.      select ROUND(., 0)     值为:.      select ROUND(., -3)    值为:0.

Sign(X):求符号函数,X>0则sign(x)=1; X=0 则sign(X)=0;X<0 则sign(X)=-1

例:     select sign(-3)     值为:-1       select sign(3)       值为:1       select sign(0)      值为:0

Power(X,y):求X的y次方;

例:    select power(4,2)   值为 :

字符串函数

ASCII(串):返回字符表达式最左端字符的ASCII 码值;

例:    select ASCII('bc')   值为:

CHAR(ASCII码):用于将ASCII 码转换为字符,如果没有输入0 ~ 之间的ASCII 码值,返回值为NULL ;

例:    select char()   值为:a

Lower(串):把字符串全部转换为小写;    

例:    select lower('QingPingGuo')   值为: qingpingguo

Upper(串) :把字符串全部转换为大写;

例:    select upper('QingPingGuo')   值为: QINGPINGGUO

LTrim(串), RTrim(串):去掉左右空格;

例(去左空格):  select '博客园'+LTrim(' 青苹果 ')+'博客园'   值为:博客园青苹果 博客园

space(个数):返回指定个数的空格;

推荐整理分享SQL语句(T-SQL汇总) 用T-SQL画出这些图形(sql汇总查询),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:sql server汇总数据,sql汇总计算,sql server汇总数据,sql 汇总求和,sql server汇总数据,sql汇总数据操作方法,sql语句汇总数据,sql汇总数据操作方法,内容如对您有帮助,希望把文章链接给更多的朋友!

replicate(串,次数):将串重复指定次数;

例:    select replicate('青苹果',2)    值为:青苹果青苹果

Left(串, 个数):返回已知串从左边开始指定个数的字符;

例:    select left('青苹果在博客园', 4)    值为:青苹果在

Right(串, 个数):返回已知串从右边开始指定个数的字符;

例:    select right('青苹果在博客园', 4)    值为:在博客园

DataLength(串):返回串的字节数长度,计算串尾空格。可以用它检查varchar,text等的动态长度;

例:    select datalength('青苹果在博客园')    值为:

SubString(串, 开始位置, 长度):返回从字符串左边'开始位置'起数量为'长度'的字符串。其中表达式可以是字符串或二进制串或含字段名或字符型变量的表达式。在这里要注意一下SUBSTRING()函数不能用于TEXT 和IMAGE 数据类型;

例:    select substring('青苹果在博客园',5,2)     值为:博客

Len(串) :返回表达式的长度。注意它返回的是字符数,而不是字节数。不计算串尾空格;

例:    select len('青苹果cnblogs ')      值为:

Replace('串1','串2','串3'):用串3替换串1中出现的所有串2字符;

例:    select replace('青苹果在北京','北京','博客园')    值为:青苹果在博客园

Stuff(串1, 开始位置, 长度, 串2):删除串1指定位置开始指定长度的字符串,并在指定位置插入串2;

例:    select stuff('青苹果是程序猿吗?',5,3,'攻城狮')    值为:青苹果是攻城狮吗?

reverse(串) :将指定的字符串的字符排列顺序颠倒;

例:    select reverse('')    值为:

charindex(串1,串2):返回串1在串2的开始位置,可从所给出的‘开始位置'进行查找;

例:    select charindex('guo','qingpingguo')    值为:9

转换函数

所谓转换函数就是把某种数据类型转换的表达式显示转换成另一种数据类型的函数。CAST(表达式 AS 数据类型[(长度)])

例:  select '今天是:' + Cast(GetDate() as char())  值为:今天是:

CONVERT(转换后的目标数据类型[(length)],表达式[style])

例:  select '今天是:' +convert(char(),getdate()) 值为:今天是:

下面来看一个求差值的函数datediff函数;

DATEDIFF(datepart,date1,date2)

例:  select datediff(yy,'..','..')  值为:    select datediff(mm,'..','..')  值为:聚合函数

聚合函数也就是统计函数,它主要是对一组值进行计算,它的功能分别是:求和(sum)、求最小(min)、求最大(max)、求总行数(count)、求平均值(avg)

例:   求和:select sum(Name) from TableName   求最小:select min(Name) from TableName   求最大:select max(Name) from TableName   求总数:select count(Name) from TableName   求平均:select avg(Name) from TableNameT-SQL的一些关键字

Print 向客户端返回用户信息

例:  print '青苹果' 屏幕上就会显示“青苹果三个字“

Go 用来通知SQL一批语句的结束

Distinct 去掉重复值

SQL语句(T-SQL汇总) 用T-SQL画出这些图形(sql汇总查询)

Declare 用来声明变量

例:  declare @a int

Set 为变量赋值

例:  set @a='青苹果'

While 在SQL中用来循环(好像在SQL中用来做循环的关键字不多)

语法:    WHILE <条件表达式> BEGIN <命令行或程序块> [BREAK] [CONTINUE] [命令行或程序块] END

While比较重要,我们来做个例子加深一下对While循环的理解:

declare @a intset @a=1while @a<5begin print '青苹果'set @a=@a+1end输出结果:青苹果     青苹果     青苹果     青苹果

if else 判断语句

判断语句用的还是比较多的我们还是来做个例子说明一下;

求:a、b、c三个数的最大值?

declare @a int,@b int,@c int,@max intset @a=1 set @b=2 set @c=3 if @a>@b set @max=@aelse set @max=@bif @max<@c set @max=@c print @max输出结果:3

begin end 用来设定一个程序块,将在BEGIN…END内的所有程序视为一个单元执行。

Exists 判断是否存在

Case 也是用来判断的,和IF语句差不多,它的格式为:

 CASE <运算式>    WHEN <运算式1> THEN <结果1> … WHEN<运算式n> THEN <结果n> [ELSE <结果n+1>] END

Return   用于结束当前程序的执行,返回到上一个调用它的程序或其它程序。在括号内可指定一个返回值。

Goto标示符 用来改变程序执行的流程,使程序跳到标有标识符的指定的程序行再继续往下执行。要注意的是作为跳转目标的标识符可为数字与字符的组合,但必须以“:”结尾,如:“:” “qingpingguo:”

例子: declare @a int   set @a = 1      qingpignguo:      print @a   set @a = @a + 1   while @a < 6     goto qingpignguo输出结果:

最后一个给大家看个好玩的:

Waitfor 用来暂停程序执行,直到等待指定时间之后,或所设定的时间已到才继续往下运行程序。

语法:  waitfor {delay '时间'|time '时间'}

解释:

(1)‘时间'必须为DATETIME类型数据,且不能包括日期,如‘::'

(2)DELAY:用来设定等待的时间长短,最多为小时。(是一个时间间隔)

(3)TIME:用来设定等待结束的时间点(是一个具体的时间)

例子: waitfor delay '::'   print '你好,我是青苹果'   go

标签: sql汇总查询

本文链接地址:https://www.jiuchutong.com/biancheng/348151.html 转载请保留说明!

上一篇:SQL 无法装载DLL Microsoft原因(无法修改sa密码)(sql安装不上去)

下一篇:SQL Server中使用Linkserver连接Oracle的方法(sql server 用法)

  • 委托贷款利息收入需要缴纳增值税么
  • 小企业会计准则下退企税分录
  • 所得税月度申报
  • 不含税买货合法吗
  • 个税申报按权责发生制行吗?
  • 待抵扣税金怎么算
  • 利润的敏感性分析怎么做?
  • 漏报了残保金如何调整?
  • 设备转产需要停止折旧吗
  • 内账收入按实际收到确认吗
  • 小规模收入超过多少必须转一般纳税人
  • 房地产企业季度所得税申报
  • 发票回退是什么情况
  • 月末 存款
  • 小型制造型企业有哪些
  • 公司交的拍卖费计入哪个会计科目?
  • 收到社保中心的生育经贴怎么做账
  • 企业外购的无形资产摊销,可以加计扣除吗?
  • 企业销售产品的成本是指已销产品的
  • 银行承兑汇票置换业务自签发之日起新票的最长期限为
  • 公司进项销项税差异较大
  • 建筑企业如何申请高新技术企业
  • 财税〔2017〕39号
  • 如何界定企业所得税的不征税收入与应税收入
  • 三证合一对纳税有影响吗
  • 办公用品包括啥
  • 利润弥补以前年度亏损是税前吗
  • 企业预付的固定资产折旧
  • 净资产收益率怎么求
  • 银行存款二级科目怎么增加
  • 银行电子承兑如何撤回
  • 计算内含报酬率所使用的年金现值系数
  • 怎么解决笔记本电脑卡顿问题
  • tkinter美观界面
  • win11如何设置安装位置
  • php字符串操作函数
  • PHP:session_module_name()的用法_Session函数
  • phpstudy的ftp
  • 核定征收的小规模纳税人要做账吗
  • 投资性房地产出售时其他综合收益
  • laravel启动流程
  • 绿化管理服务经营范围
  • 公司购买食品属于什么费用
  • yolov5训练中途停止了怎么办
  • 购买仪器属于什么费用
  • 个人所得的账务处理分录
  • 销货退回的账务如何处理
  • 会计中应收账款属于什么科目
  • 应收账款增值税专用发票
  • 合伙企业有限合伙
  • 没有进货发票可以开票吗?
  • 新产品的研发费用扣除例题
  • 开发成本转到哪里
  • 开公司如何选择行业
  • 明细账示例图
  • 会计工作移交的时候需要有谁在场
  • 融资租赁怎么开收据
  • 敬老院的会计科目
  • 创建的sql语句
  • 安装操作系统win10
  • 电脑周边是什么
  • ubuntu无法解压tar.gz
  • Linux(CentOS)用split命令分割文件的方法
  • linux校验文件
  • 系统闹钟设置
  • Linux操作系统支持虚拟内存吗
  • dosbox批处理
  • popup怎么用
  • 备份mbr引导
  • vb中chr$(13)是什么意思
  • shc加密后不能运行
  • google gsoc
  • android退出功能
  • 关于python整数类型
  • 服务协议属于哪类合同
  • 货车可申请停保吗
  • 服务费交哪个税目的印花税
  • 车船税新标准计算办法
  • 深圳代理记账公司赚钱吗
  • 举报信如何投递
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号