必须会的SQL语句(五) NULL数据处理和类型转换

1.Null数据的处理

1)检索出null值
              select * from 表 where xx is null
  
    2)null值替换
     select
         name,
         isnull ( cast (字段 as varchar(20)) , '空')
     from 表名
 
2.数据类型转换
    1)Cast
        --'101'可以用表中字段来替换
        select cast('101' as varchar(20))
  
    2)Convert
        select convert(varchar(20),100)

(0)

相关推荐

  • 必须会的SQL语句(七) 字符串函数、时间函数

    字符串函数    1.大小写转换    --upper 转化成大写    --lower  转换成小写    select upper('AsaR')   2.长度    --len 字数    --datalength 字节数   3.去除前后空格    --rtrim 去除右边空格    --ltrim  去除左边空格   4.字符串截取    --Left('串',15)  从左侧开始 截取15个字节    --right('串',15) 从右侧开始 截取15个字节    --SubStr

  • 必须会的SQL语句(一) 创建数据库与删除数据库

    1.创建数据库 Create database 名称 on primary { name ='名称', filename ='c:\xx\名称.mdf', size = 10mb, --数据库的初始大小 filegrowth =1mb, --如果初始大小不够用了,每次增长1mb. maxsize = 20mb --数据库的空间上限,填写unlimited表示无限制 } log on { name='名称_log', filename ="c:\xx\名称_log.ldf" size =

  • 必须会的SQL语句(四) 数据删除和更新

    1.删除 1)删除记录   Delete from 表名 where id ='xx' 2)删除所有数据,并回归初始化标识字段.   Truncate table 表名 3)delete与truncate区别      a. truncate是能使种子回到初始值      b. truncate不能加条件      c. truncate不能涉及触发器      d. truncate性能要比delete高得多 2.更新 1)基础的update     update 表名     set [列名

  • 必须会的SQL语句(八) 数据库的完整性约束

    实体完整性 1.建表时定义主键 Create table 表名    (         Sno int identity(1,1),         Sname nvarchar(20),         --设置主键         Primary key (Sno)    )   2.添加主键 alter table 表名     add constraint PK_表名_Sno     primary key(id) 参照完整性1.建表时定义外键 create table 表名   (

  • 必须会的SQL语句(二) 创建表、修改表结构、删除表

    1.创建数据库表 --使用哪个数据库,如果不写这一句是默认的数据库,也可以用鼠标选当前数据库 use testDB --创建表 Create Table tablename ( --id表示字段名 --int 数据类型 --primary key 主键 --not null 非空 --identity(1,1)初始值是1 每次自增长1 id int primary key not null identity(1,1), --unique 唯一 name varchar(20) not null

  • 必须会的SQL语句(六) 数据查询

    1.基础的查询     1)重命名列     select name as '姓名' from 表名       2)定义常量列     select 是否 ='是' from 表名       3)top用法 percent      --这种写法可以获取前20%条字段.       select top 20 percent * from 表名       4)去除重复列      select distinct 列名 from 表名         5)聚合函数      max    a

  • 必须会的SQL语句(三) 数据插入

    1.规范一些使用插入语句的小规范 1)中文字符串前 最好 加一个N   2)列名用中括号 扩起来   像这样  [列名]   2.常规写法 Insert into tableName ( [column1] , [column2] ) values (N'中文','11ds')   3.多行一条语句插入多行 insert into 表名 ([列1],[列2])      select  '值1','值2' union all     --这里呢,union 和 union all的 区别    

  • 必须会的SQL语句(五) NULL数据处理和类型转换

    1.Null数据的处理 1)检索出null值               select * from 表 where xx is null        2)null值替换      select          name,          isnull ( cast (字段 as varchar(20)) , '空')      from 表名   2.数据类型转换     1)Cast         --'101'可以用表中字段来替换         select cast('101'

  • c# 剔除sql语句'尾巴'的五种方法

    一:背景 1. 讲故事 这几天都在修复bug真的太忙了,期间也遇到了一个挺有趣bug,和大家分享一下,这是一块sql挺复杂的报表相关业务,不知道哪一位大佬在错综复杂的 嵌套 + 平行 if判断中sql拼接在某些UI组合下出问题了,最终的 sql 架构类似这样的. var sql = "select 1 union all select 2 union all select 3 union all"; 这种sql到数据库去肯定是报错的,有些朋友可能想说这还不简单,在相关的 if 判断中不

  • sql 语句中的 NULL值

    今天写了这样的代码 复制代码 代码如下: DECLARE @atr NVARCHAR(20) SET @atr = NULL IF(@atr = NULL) BEGIN PRINT 1 END 原本是想打印出1的.但是没有. 把 代码修改成如下: DECLARE @atr NVARCHAR(20) SET @atr = NULL IF(@atr IS NULL) BEGIN PRINT 1 END 这样就正确打印出1了. 然后自己有做了如下的修改,把if语句修改成 复制代码 代码如下: IF(N

  • 解决mybatis执行SQL语句部分参数返回NULL问题

    今天在写代码的时候发现一个问题:mybatis执行sql语句的时候返回bean的部分属性为null,在数据库中执行该sql语句能够正常返回,把相关代码反反复复翻了个遍,甚至都重启eclipse了,依旧没解决问题,后来网上搜了一下,还真有类似的问题. 闲话少说,直接说问题,该sql语句是自己写的,resultType直接用了该bean全名称,最终导致部分属性显示为null, 原来的写法: <select id="selectByArticle" parametertype=&quo

  • 在 SQL 语句中处理 NULL 值的方法

    在日常使用数据库时,你在意过NULL值么? 其实,NULL值在数据库中是一个很特殊且有趣的存在,下面我们一起来看看吧: 在查询数据库时,如果你想知道一个列(例如:用户注册年限 USER_AGE)是否为 NULL,SQL 查询语句该怎么写呢? 是这样: SELECT * FROM TABLE WHERE USER_AGE = NULL 还是这样? SELECT * FROM TABLE WHERE USER_AGE IS NULL 当然,正确的写法应该是第二种(WHERE USER_AGE IS

  • sql语句 update字段null不能用is null问题

    目录 sql语句 update字段null不能用is null update更新数据时null字段是否更新进数据库总结 情况一:不需要更新进数据库 情况二:需要更新进数据库 (推荐方法3) sql语句 update字段null不能用is null update字段为 null 值时, 要用 set column = null, 而不是 set column is null  UPDATE tableA set 字段a is null WHERE字段b = 条件; 例: mysql> UPDATE

  • 用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等

    用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 3.修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name new_data_type 4.sp_rename 改名 更改当前数据库中用户创建对象(如表.列或用户定义数据类型)的名称. 语法 sp_rename

  • Mssql,Access的sql经典SQL语句大全

    下列语句部分是Mssql语句,不可以在access中使用. SQL分类: DDL-数据定义语言(CREATE,ALTER,DROP,DECLARE) DML-数据操纵语言(SELECT,DELETE,UPDATE,INSERT) DCL-数据控制语言(GRANT,REVOKE,COMMIT,ROLLBACK) 首先,简要介绍基础语句: 1.说明:创建 数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份

  • Mysql Sql语句注释大全

    MySQL的SQL语句里面是可以加注释的,下面给大家介绍mysql sql语句注释大全,一起看看吧! 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice'disk','testBack','c:\mssql7backup\MyNwind_1.dat' --- 开始

  • 10种Java开发者编写SQL语句时常见错误

    Java开发者对于面向对象编程思维与命令行编程思维的协调程度,取决于他们如下几种能力的水平: 技巧(任何人都可以编写命令行形式的代码) 教条(有的人使用"模式 - 模式"的方式,即模式无处不在,并以名字作为标识) 情绪状况(在初期,真正面向对象形式的代码比起命令式代码会更加难懂.) 但是,当Java开发人员编写SQL语句时,一切都变得不同了.SQL是一种说明式语言,与面向对象思想和命令式思想无关.在SQL语言中,查询非常容易表达.但它也不是那么容易以最佳或最正确地方式编写出来.开发人员

随机推荐