解决查询同步人员信息,使用 case when then解决多IF判断问题

select LOCATION,
cert_type,
WEIXIN,
MARRIAGE,
RECORD_WAGE,
SPECIALTY,
EMAIL,
WORKING_TIME,
REPORTER,
NATION,
GENDER,
TELPHONE,
OFFICENUMBER,
post_type,
ID,
BIRTHDAY,
AGE,
POSTALCODE,
QQ,
WORK_STARTING_DATE,
WEIBO,
POSTADDRESS,
POLITICS,
HOBBY,
MSN,
UPDATE_TIME,
BIRTHPLACE,
EXT_ATTR_4,
EXT_ATTR_5,
EXT_ATTR_2,
EXT_ATTR_3,
ADDRESS,
yearsOFservice,
EXT_ATTR_1,
person_class,
DEGREE,
USED_NAME,
BLOG,
ID_CARD,
WEBSITE,
case
when EXT_ATTR_2 is null then EXT_ATTR_2
when EXT_ATTR_2 = CONVERT(VARCHAR (10), DATEADD(MONTH, datediff(MONTH, 0, EXT_ATTR_2), 0), 120) then CONVERT(
VARCHAR (10), DATEADD(MONTH, datediff(MONTH, 0, EXT_ATTR_2), 0), 120)
else CONVERT(VARCHAR (10), DATEADD(MONTH, DATEDIFF(MONTH, 0, EXT_ATTR_2) + 1, 0), 120) end as annuity_pay
from mid_org_person_base
where id = '${code}'; select cert_type,
EMAIL,
GENDER,
TELPHONE,
OFFICENUMBER,
post_type,
ID,
EXT_ATTR_4,
EXT_ATTR_5,
EXT_ATTR_2,
case
when EXT_ATTR_2 is null then EXT_ATTR_2
when EXT_ATTR_2 = CONVERT(VARCHAR (10), DATEADD(MONTH, datediff(MONTH, 0,EXT_ATTR_2), 0), 120) then CONVERT(
VARCHAR (10), DATEADD(MONTH, datediff(MONTH, 0, EXT_ATTR_2), 0), 120)
else CONVERT(VARCHAR (10), DATEADD(MONTH, DATEDIFF(MONTH, 0, EXT_ATTR_2) + 1, 0), 120)
end as rizhiDate,
EXT_ATTR_3,
ADDRESS,
EXT_ATTR_1,
person_class,
ID_CARD
from mid_org_person_base
where id = '${code}'; case
when EXT_ATTR_1 is null then EXT_ATTR_1
when EXT_ATTR_1 = (convert(char(10), dateadd(month, datediff(month, 0, EXT_ATTR_1), 0), 126)) then (convert(
char(10), dateadd(month, datediff(month, 0, EXT_ATTR_1), 0)))
else convert(char(10), DATEADD(MONTH, DATEDIFF(MONTH, 0, EXT_ATTR_1) + 1, 0), 126)
end as rizhiDate, select
case
when 范围条件 then 产生的结果
when 范围条件 then 产生的结果
else 不是以上范围产生的结果
end
from 表名 select cert_type,
EMAIL,
GENDER,
TELPHONE,
OFFICENUMBER,
post_type,
ID,
EXT_ATTR_4,
EXT_ATTR_5,
EXT_ATTR_2,
# ISNULL(IF(EXT_ATTR_2 = convert(char(10), dateadd(month, datediff(month, 0, getdate()), 0), 126),
# convert(char(10), dateadd(month, datediff(month, 0, getdate()), 0), 126),
# convert(char(10), DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE()) + 1, 0), 126)), "") as extattr,
IF(ISNULL(EXT_ATTR_2,0))
EXT_ATTR_3,
ADDRESS,
EXT_ATTR_1,
person_class,
ID_CARD
from mid_org_person_base
where id = '${code}'; select isnull(EXT_ATTR_2,GETDATE())
from mid_org_person_base
where id = '${code}'; select if(2>1,1,0) from mid_org_person_base where id = '${code}'; select DATE_ADD(curdate()-day(curdate())+1,interval 1 month); -- 获取下个月的第一天
select DATE_ADD(curdate(),interval -day(curdate())+1 day); -- 获取本月第一天 ifnull(if(EXT_ATTR_2 = (select DATE_ADD(curdate(), interval -day(curdate()) + 1 day)),
(select DATE_ADD(curdate(), interval -day(curdate()) + 1 day)),
(select DATE_ADD(curdate() - day(curdate()) + 1, interval 1 month))),null), select DATEADD(MM,DATEDIFF(MM,0,GETDATE()),0) AS 本月第一日
,DATEADD(DAY,1,DATEADD(MM,DATEDIFF(MM,0,GETDATE())+1,0)) 本月最后一日 select CONVERT(VARCHAR (10), DATEADD(MONTH, DATEDIFF(MONTH, 0,'2022-12-02'), 0), 120) AS 本月第一日
,CONVERT(VARCHAR(10),DATEADD(MONTH, DATEDIFF(MONTH, 0, '2022-12-02')+1, 0),120) 下月第一日 convert(char(10),getdate(),126) --本月第一天
select dateadd(month, datediff(month, 0, getdate()), 0);
--本月最后一天
select dateadd(month, datediff(month, -1, getdate()), -1);
--上月第一天
select DATEADD(MONTH, DATEDIFF(MONTH, 0, GETDATE())-1, 0)
--上月最后一天
select DATEADD(MONTH, DATEDIFF(MONTH, -1, GETDATE())-1, -1)

记录一下工作中SQL Server数据库遇到的问题的更多相关文章

  1. 转:SQL SERVER数据库中实现快速的数据提取和数据分页

    探讨如何在有着1000万条数据的MS SQL SERVER数据库中实现快速的数据提取和数据分页.以下代码说明了我们实例中数据库的“红头文件”一表的部分数据结构: CREATE TABLE [dbo]. ...

  2. SQL Server数据库中的系统数据库?

    SQL Server的系统数据库分为:master,model,msdb和tempdb 1.Master数据库 Master数据库记录SQL Server系统的所有系统级别信息(表sysobjects ...

  3. C#面试题(转载) SQL Server 数据库基础笔记分享(下) SQL Server 数据库基础笔记分享(上) Asp.Net MVC4中的全局过滤器 C#语法——泛型的多种应用

    C#面试题(转载) 原文地址:100道C#面试题(.net开发人员必备)  https://blog.csdn.net/u013519551/article/details/51220841 1. . ...

  4. SQL Server数据库快照的工作方式

    SQL Server数据库快照的工作方式 翻译自:How Database Snapshots Work 最近有一个帖子<errorlog中的异常信息rolled forward 和rolled ...

  5. 在易语言中调用MS SQL SERVER数据库存储过程方法总结

    Microsoft SQL SERVER 数据库存储过程,根据其输入输出数据,笼统的可以分为以下几种情况或其组合:无输入,有一个或多个输入参数,无输出,直接返回(return)一个值,通过output ...

  6. 清空SQL Server数据库中所有表数据的方法(转)

    清空SQL Server数据库中所有表数据的方法 其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可能陷入 ...

  7. SQL Server数据库多种方式查找重复记录

    摘要:SQL Server是一个关系数据库管理系统,SQL Server数据库的应用是很多的,SQL Server数据库赢得了广大用户的青睐,本文将主要为大家介绍关于SQL Server数据库中查找重 ...

  8. 清空SQL Server数据库中所有表数据的方法

    原文:清空SQL Server数据库中所有表数据的方法 其实删除数据库中数据的方法并不复杂,为什么我还要多此一举呢,一是我这里介绍的是删除数据库的所有数据,因为数据之间可能形成相互约束关系,删除操作可 ...

  9. 浅析SQL Server数据库中的伪列以及伪列的含义

    SQL Server中的伪列 下午看QQ群有人在讨论(非聚集)索引的存储,说,对于聚集索引表,非聚集索引存储的是索引键值+聚集索引键值:对于非聚集索引表,索引存储的是索引键值+RowId,这应该是一个 ...

  10. 基于Spring Boot,使用JPA调用Sql Server数据库的存储过程并返回记录集合

    在上一篇<基于Spring Boot,使用JPA操作Sql Server数据库完成CRUD>中完成了使用JPA对实体数据的CRUD操作. 那么,有些情况,会把一些查询语句写在存储过程中,由 ...

随机推荐

  1. AI绘画| 迪士尼风格|可爱头像【附Midjourney提示词】

    Midjourney案例分享 图片预览 迪士尼风格|可爱头像 高清原图及关键词Prompt已经放在文末网盘,需要的自取 在数字艺术的新时代,人工智能绘画已经迅速崭露头角.作为最先进的技术之一,AI绘画 ...

  2. 《Python魔法大冒险》007 被困的精灵:数据类型的解救

    小鱼和魔法师深入魔法森林,树木之间流淌着神秘的光芒,每一片叶子都似乎在低语着古老的咒语.不久,他们来到了一个小湖旁,湖中央有一个小岛,岛上困着一个透明的泡泡,里面有一个悲伤的精灵. 小鱼看着那个精灵, ...

  3. Vmware中的centos7突然连接不上网络了,网络适配器采用的是NAT模式,解决办法?

    进入Windows操作系统,然后右键点击我们的电脑,进入到管理界面 计算机-> 管理->服务和应用程序->服务,找到如下服务进程 VMware DHCP Service, VMwar ...

  4. Web3.0时代的全新合作模式:DAO

    你有没有遇到这种情况:我有一个很棒的想法,想要开发出一个"改变世界"的项目,但是我既没有技术,也没有人脉,甚至没有资金,导致我始终没有办法开始行动,痛苦万分.就比如在黑客大赛上,我 ...

  5. 【Python爬虫实战】爬虫封你ip就不会了?ip代理池安排上

    前言 在进行网络爬取时,使用代理是经常遇到的问题.由于某些网站的限制,我们可能会被封禁或者频繁访问时会遇到访问速度变慢等问题.因此,我们需要使用代理池来避免这些问题.本文将为大家介绍如何使用IP代理池 ...

  6. 创建及管理DSW实例

      机器学习PAI 产品概述 快速入门 操作指南 准备工作 工作空间管理 AI计算资源管理 AI开发 开发流程 快速开始 智能标注(iTAG) 可视化建模(PAI-Designer) 交互式建模(PA ...

  7. 高可用mongodb集群(分片+副本):性能测试

    目录 ■ 为指定的库和表指定hash分片 ■ 测试模型,即workload模型 ■ 测试指标 ■ workload_s6 ■ 分片集群性能测试数据统计分析 ■ 测试结论 Yahoo! Cloud Se ...

  8. IDEA工具第一篇:细节使用-习惯设置

    安装好Idea后,直接上手clone代码进入编码时代,有没有那么一刻你会觉用起来没有那么顺手流畅呢? 下面是关于 [Windows] 下安装idea的一些习惯设置[ Mac大致一样 ] 一.修改系统文 ...

  9. ExtJS的使用方法汇总(1)——配置和表格控件使用

    在网上差一些关于ExtJS的相关资料,看到这篇博客写的不错,拿出来分享一下! 博客文章:ExtJS的使用方法汇总(1)--配置和表格控件使用              ExtJS的使用方法汇总(2)- ...

  10. CF1766B [Notepad#]

    Problem 题目简述 给你一个整数 \(n\) 和字符串 \(s\),问:能不能在小于 \(n\) 次操作的情况下,输出字符串 \(s\). 有两次操作可供使用: 在已打出内容的最后添加一个字符. ...