• sql coalesce()函数、datalength()函数介绍及应用


    Posted by 欧阳振华 on 2008-10-3 8:46:20
    1. select CONVERT(varchar(12) , getdate(), 101 )  
    2. 09/12/2004  
    3.  
    4. select CONVERT(varchar(12) , getdate(), 103 )  
    5. 12/09/2004  
    6.  
    7. select CONVERT(varchar(12) , getdate(), 104 )  
    8. 12.09.2004  
    9.  
    10. select CONVERT(varchar(12) , getdate(), 105 )  
    11. 12-09-2004  
    12.  
    13. select CONVERT(varchar(12) , getdate(), 106 )  
    14. 12 09 2004  
    15.  
    16. select CONVERT(varchar(12) , getdate(), 107 )  
    17. 09 12, 2004  
    18.  
    19. select CONVERT(varchar(12) , getdate(), 108 )  
    20. 11:06:08  
    21.  
    22. select CONVERT(varchar(12) , getdate(), 109 )  
    23. 09 12 2004 1   
    1. select CONVERT(varchar(12) , getdate(), 110 )  
    2. 09-12-2004         
    3. select CONVERT(varchar(12) , getdate(), 113 )  
    4. 12 09 2004 1  
    5.  
    6. select CONVERT(varchar(12) , getdate(), 114 )  
    7. 11:06:08.177  

    1、COALESCE()函数

    ---简介---
    T-SQL的COALESCE()函数能够让你指定多个表达式,而且COALESCE()会返回组里第一个非空的值。要使用下面的形式,其中expression可以是任何数据类型,并能够等于大多数合法的表达式:
    COALESCE (expression [,…n])--(与CASE函数等价)

    CASE
        WHEN (expression1 IS NOT NULL) THEN expression1
        ...
        WHEN (expressionN IS NOT NULL) THEN expressionN
        ELSE NULL

    如果所有自变量(expression1-N)均为 NULL,则 COALESCE 返回 NULL 值。

    ---示例---
    create database dbTest
    use dbTest
    create table basic
    (
    [id] int identity(1,1) primary key,
    [length] decimal null,
    [height] decimal null,
    [width] decimal null
    )

    插入一条数据:
    insert into basic values(null,null,null)
    查询语句:
    select coalesce(length,height,width) from basic

    --查询结果:NULL

    插入下列数据:
    insert into basic values(1.00,null,null)
    insert into basic values(2.00,null,null)
    insert into basic values(3.00,null,null)
    insert into basic values(null,4.00,null)
    insert into basic values(null,5.00,null)
    insert into basic values(null,6.00,null)
    insert into basic values(null,null,7.00)
    insert into basic values(null,null,8.00)
    insert into basic values(null,null,9.00)

    查询语句:
    ★ select coalesce(max(height),0)+1.00 from basic
    ★ select cast(coalesce(length * 2, height, width * 3) as decimal ) as 'Total List' from basic

    查询结果:
    ★7.00
    ★2、4、6、4、5、6、21、24、27;
    /*我们一般用它来检索索引(顺序号,层次号),最大者id*/

    2、DATALENGTH()函数

    ---简介---

    返回任何表达式所占用的字节数。
    DATALENGTH 对 varchar、varbinary、text、image、nvarchar 和 ntext 数据类型特别有用,因为这些数据类型可以存储可变长度数据。

    NULL 的 DATALENGTH 的结果是 NULL。

    ---示例---

    以上例为准,查询语句:
    select datalength(width) from basic

    查询结果:NULL、NULL、NULL、NULL、NULL、NULL、5、5、5(也就是decimal表达式占用地字节数为5,int 为4,你可以试试其它的sql数据类型)
    /*我们一般用于查询将image,varbinary数据类型*/
  • 相关阅读:
    PIL库,图像处理第三方库
    文件指针
    机器学习之KNN---k最近邻算法-机器学习
    python 中的内置高级函数
    sklearn中standardscaler中fit_transform()和transform()有什么区别,应该怎么使用?
    python中导入sklearn中模块提示ImportError: DLL load failed: 找不到指定的程序。
    pandas中读取文件报错
    beacon帧字段结构最全总结(一)——beacon基本结构
    python中实例方法,类方法,静态方法简单理解
    一种logging封装方法,不会产生重复log
  • 原文地址:https://www.cnblogs.com/yuanzhengang/p/1329705.html
Copyright © 2020-2023  润新知