1. SQL中使用case,when,then

SELECT
CASE TYPE WHEN 1 THEN '正常' WHEN 2 THEN '密码错误'
ELSE '不正常' END '状态'
FROM tbl_user 

或者

SELECT
CASE WHEN TYPE <> 1 THEN '正常' WHEN TYPE = 1 THEN '密码错误' END '状态'
FROM tbl_user 

需要注意的是: 最后必须有end,可以有else也可以没有。

2. UNION和UNION ALL

在写SQL的时候。偶尔会用到两个表的数据结合在一起返回的,就需要用到UNION 和 UNION ALL,有的时候有些数据的存储可能涉及到分库分表,查询的时候,可能需要查询所有的分表,这个时候,也需要用到UNION或者UNION AL。

union操作符:用于合并两个或多个SELECT语句的结果集,这里需要注意的是:UNION内部的SELECT语句必须拥有相同数量的列,列也必须拥有相似的数据类型,同时,每条SELECT语句中列的顺序必须相同。

并且需要注意的是:UNION和UNION ALL连接的语句,算是一个sql,只能有一个order by 语句,如果你需要两个sql都进行排序之后合并在一起,就需要使用子查询,将查询的语句再次查询一遍,然后进行合并!!

SELECT name FROM user UNION  SELECT name FROM user1 //得到的结果就是:分别从user表和user1表中查询name字段,然后合并到一起。

union all :如果需要去重,那么就使用union all

SELECT * FROM
(SELECT top 1 left(convert(varchar(100),RECEIVE_TIME,108 ),5) receiveTime, '0' restoreTime,unit_code,unit_nameFROM T_FILE_RECEIVE_RECORD WHERE UNIT_CODE = '123123' and convert(char(100),RECEIVE_TIME,23)='2018-10-06' ORDER BY RECEIVE_TIME DESC
) table1
UNION ALL
SELECT * FROM
(SELECT top 1  '0' receiveTime, left(convert(varchar(100),RESTORE_TIME,108 ),5) restoreTime,unit_code,unit_name
FROM T_FILE_RESTORE_RECORD WHERE UNIT_CODE = '123123' and convert(char(100),restore_time,23)='2018-10-06' ORDER BY restore_time DESC
) table2

转载于:https://www.cnblogs.com/chenmc/p/9390676.html

sql中的一些通用函数相关推荐

  1. sql中函数、符号大全

    decode函数仅支持oracle数据库 SELECT ID,DECODE(inParam,'beComparedParam','值1' ,'值2') name FROM bank #如果第一个参数i ...

  2. SQL 中循环、for循环、游标

    我们使用SQL语句处理数据时,可能会碰到一些需要循环遍历某个表并对其进行相应的操作(添加.修改.删除),这时我们就需要用到咱们在编程中常常用的for或foreach,但是在SQL中写循环往往显得那么吃 ...

  3. SQL中的case when then else end用法

    2019独角兽企业重金招聘Python工程师标准>>> Case具有两种格式.简单Case函数和Case搜索函数. --简单Case函数 CASE sexWHEN '1' THEN ...

  4. 在SQL中使用CRL函数示例

    在SQL中使用CRL函数 实验目标: 1. 在SQL中创建CRL函数,使之能够向指定的计算机发送消息 实验步骤 2. 在VS中创建类发送消息的类 3. 将以下代码黏贴进去 using System; ...

  5. pl/sql中三种游标循环效率对比

    pl/sql中三种游标循环效率对比 - Oracle数据库栏目 - 红黑联盟 http://www.2cto.com/database/201307/224636.html 转载于:https://b ...

  6. SQL中内连接、外连接、交叉连接

    SQL中内连接.外连接.交叉连接 SQL连接可以分为内连接.外连接.交叉连接. 数据库数据:            book表                                      ...

  7. 简单介绍SQL中ISNULL函数使用方法

    这篇文章介绍了SQL Server.MySQL.Oracle三种数据库中ISNULL函数的使用方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧 SQL Ser ...

  8. SQL 中left join ,inner join,right join的区别

    2019独角兽企业重金招聘Python工程师标准>>> sql中存在有左连接  插入 右连接 sql语句 left join ,inner join,right join 进行 wh ...

  9. 什么是存储过程?什么是触发器?SQL中存储过程与触发器的区别是什么?

    什么是存储过程?什么是触发器?SQL中存储过程与触发器的区别是什么? 存储过程是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,它存储在数据库中,一次编译后永久有效,用户通过指定存储过程的名 ...

  10. SQL中where与having的区别

    SQL中where与having的区别 目录 SQL中where与having的区别 创建表 插入数据 进行聚合操作 # WHERE是在聚合之前进行数据行的过滤而HAVING实在聚合之后进行新数据的过 ...

最新文章

  1. python杂记-RSA加解密实现(2)
  2. DVWA——Sqlmap练习
  3. 被文献坑是一种什么样的体验?
  4. redis核心与实战(一)数据结构篇
  5. 为什么自己编写的页面总是在那里抖动_别克威朗为什么销量不佳?
  6. 深度学习检测眼睛疾病
  7. Solaris 10 x86 Mono 三次折腾准备休战了
  8. 深度学习福利入门到精通第五讲——ResNet模型
  9. 用C#绘图实现动画出现卡屏(运行慢)问题的解决办法
  10. 转载一篇理解堆和栈区别的好文章
  11. SQL Server 2012安装异常:Error while enabling Windows feature: NetFx3, Error Code: -2146498298
  12. Windows 硬盘分区整数大小计算
  13. 【国产单片机】华大HC32L13系列使用printf进行调试(多种方法)
  14. 郑州统考英语计算机培训,2016年郑州大学远程教育英语统考练习题
  15. 肺疫面前,段子手出动,但是玩笑也要分场合
  16. 泉州地区的“会子”是一种怎样的制度?
  17. aodv协议源代码分析
  18. 基于51单片机的扫地小车,扫地机器人设计 主要功能有寻迹避障,来回清扫功能,往返清扫功能
  19. 电机,电调,电池搭配的一些关系
  20. java提示版本过低怎么处理_eclipse提示jdk版本过低怎么办 eclipse提示jdk版本过低解决方法...

热门文章

  1. CentOS7下GNOME桌面的安装
  2. GitHub使用(四) - 关于分支Branch
  3. js学习笔记——函数定义
  4. JS等比例缩小图片尺寸
  5. HTML - 'MARQUEE'
  6. css 百分比继承关系的探讨
  7. 怎样解决python dataframe loc,iloc循环处理速度很慢的问题
  8. zbb20170919 设置eclipse myeclipse 在工程窗口 项目目录 显示代码错误提示的
  9. 非连续内存区缺页异常处理
  10. 春天:谁是最得意的诗人?