给查询的数据加上序列号:
相同序列号:(@i:=@i+1) as i
自增序列号: (@i:=@i+1) as i
mysql 中CASE WHEN语法使用 else
如果字段时间小于当前时间、那么就等于当前时间否则就是字段时间
CASE WHEN 字段时间<GETDATE() THEN GETDATE() ELSE 字段时间 END AS 别名
用于一个字段匹配值,字段中如果包含附属的值,那么就可以等于想要赋的值。
CASE 字段名
WHEN '字段包含的值(自定义)' then '想要赋的值(自定义)' WHEN '字段包含的值(自定义)' then '想要赋的值(自定义)'
end as 别名,字段2 AS 别名2
如果一个字段匹配到这些值,那么他就等于想要的值,否则等于定义最后的值
Case
When 字段值 Like'1%' Then '想要的值1'
When 字段值Like'2%' Then '想要的值2'
When 字段值 Like'3%' Then '想要的值3'
When 字段值 Like'4%' Then '想要的值4'
When 字段值 Like'5%' Then '想要的值5'
else ‘想要的值6’
END AS 别名,
如果查询字段null 给一个默认值 ,否则原有的值
CASE WHEN fullname is null then '默认值' else fullname end as fullname,
去重去空格:and isnull(selfs.UserCode,'')<>''
mysql
当天时间:DATE_FORMAT(creation_date,'%Y-%m-%d')
sql百分比保留后小数点后两位:CONCAT(ROUND(wg.pcl_qty / rw.plan_qty * 100, 2),'%') AS '每日达成率'
日期:date( pcl_date )
--对某字段进行修改
ALTER TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度 新默认值 新注释;
alter table jgmes_pm_miss_report modify column ps_id nvarchar(150) DEFAULT NULL COMMENT '工位编号';
在已有的表添加一个字段:
-- 漏报工表 ALTER TABLE `jgmes_pm_miss_report` ADD COLUMN `pds_id` bigint(20) COMMENT '派工单编号';
sqlserver字符截取:
1、'-'后面二位数:substring(dlyndxsc.Summary,charindex('-',dlyndxsc.Summary)+3,2)
2、倒序‘-’后面二位数:substring(reverse(dlyndxsc.Summary),0,charindex('-',reverse(dlyndxsc.Summary)) - 0))
3、CONCAT():字符拼接
4、len():获取位数