设为首页 收藏本站
查看: 775|回复: 0

[经验分享] SQL学习之T-SQL编程之函数

[复制链接]

尚未签到

发表于 2018-10-21 06:16:10 | 显示全部楼层 |阅读模式
  在这里,介绍T-SQL的函数,比如说,数学函数、字符串函数、转换函数、日期函数以及自定义函数
  1、数学函数:
函数名函数作用abs计算绝对值1rand获取0-1随机数2round四舍五入保留小数位3square平方运算4power幂运算5sqrt平方根运算6pi圆周率7ceiling向上取整8floor向下取整9  ceiling(numeric_expression)
  返回大于或等于所给数字表达式的最小整数(向上取整)
  floor(numeric_expression)
  返回小于或等于所给数字表达式的最大整数(向下取整)
  round(numeric_expression , length)
  将给定的数据四舍五入到给定的长度
  PI()
  常量3.14159265358979
  rand([ seed ])
  返回0到1之间的随机float值
  2、字符串函数:
str转换浮点数字为字符串left截取左边字符串right截取右边字符串space生成空格字符串lower/upper转换为小/大写字符串reverse反序字符串len获取字符串长度replicate重复生成字符串rtrim清除右边空格substring  截取字符串
  ltrim(char_expr)
  删字符串前面的空格
  rtrim(char_expr)
  删字符串后面的空格
  left(char_expr , integer_expr)
  返回字符串中从左边开始指定个数的字符
  right(char_expr , integer_expr)
  返回字符串中从右边开始指定个数的字符
  substring(expr , start , length)
  返回指定表达式中从start位置开始长度位length的部分
  3、日期函数:
getdate获取当前日期year获取年份month获取月份day获取天数datepart获取任意时间值datename获取任意时间字符dateadd日期加法datediff日期减法isdate是否为日期数据  4、转换函数:
  利用cast函数可以将某一个数据类型强制转换为另一种数据类型
  cast(expression AS data_type)
  convert函数允许用户把表达式从一种数据类型转换为另一种数据类型,并且还在日期的不同显示格式之间进行转换。
  convert(data_type[(length)],expression[,style])
  style参数,提供了各种日期显示格式,(此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到
  5、自定义函数:
  (1)创建用户自定义函数的语法形式如下:
  create function   函数名  (形式参数名称 AS 数据类型)
  returns        返回数据类型
  begin   
  函数内容
  return         表达式
  end
  
  (2)调用用户自定义函数的基本语法:
  变量 = 用户名.函数名(实际参数列表)
  (3)流程控制语句:
  使用T-SQL语句编程的时候,常常要利用各种流程控制语句进行顺序、分支控制转移、循环等操作。T-SQL提供了一组流程控制语句,包括条件控制语句、无条件控制语句、循环语句和返回状态值的语句
  定义语句块:
  begin......end是用来指定一个语句块,凡是在begin与end之间的程序都属于同一个流程控制,通常都是与if...else或while等一起使用。在实际运用中,begin和end必须成对出现。如果begin...end中间只有一行程序,则可以省略begin与end
  if else语句:
  语法格式:
  if 布尔表达式
  T-SQL语句|语句块
  else
  if 布尔表达式
  T-SQL语句|语句块
  在if语句中,要求只能有一条语句;用begin...end可将多条语句视做逻辑上的一条语句;if和else后面的子句都允许嵌套,且嵌套层次不受限制
  if exists语句:
  use student
  if exists
  (
  select *
  from student
  where SNO=‘0611101'
  )
  print  '该学生存在'
  else
  print '该学生不存在'


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-624204-1-1.html 上篇帖子: SQL Server 2005安装程序,IIS功能要求警告的解决方法 下篇帖子: QT开发(四十八)——数据库SQL接口层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表