Mysql语句积累本

1.mysql数据库中存在生日字段,格式为’-**‘或’.**',前面的四个字段为年,后面的两个字段为月,如何转化为仅剩年的字段并返回一个为year的值?

SELECT   
    CASE   
        WHEN BIRTH_DATE LIKE '____-__' THEN SUBSTRING_INDEX(BIRTH_DATE, '-', 1)  
        WHEN BIRTH_DATE LIKE '____.__' THEN SUBSTRING_INDEX(BIRTH_DATE, '.', 1)  
        ELSE NULL -- 或者其他默认值  
    END AS year  
FROM   
    cltms_enterprise_talent_cache;

2.select CORPORATE_GOVERNANCE from cltms_enterprise_talent_cache where CORPORATE_GOVERNANCE=‘党委会’ 以此为例,查出类似’党委会’的信息 的语句

SELECT CORPORATE_GOVERNANCE   
FROM cltms_enterprise_talent_cache   
WHERE CORPORATE_GOVERNANCE LIKE '%党委会%';
这里,%是一个通配符,它表示任意数量的任意字符。因此,'%党委会%'会匹配任何包含'党委会'这个子串的字符串。

3.select count(*) from cltms_enterprise_talent_cache where POLITICAL_OUTLOOK=‘中共党员’; A

SELECT count(*) FROM cltms_enterprise_talent_cache WHERE POLITICAL_OUTLOOK != ‘中共党员’;B

select count(*) from cltms_enterprise_talent_cache;C

需求:计算A/C 和B/C的百分比

-- 计算A/C的百分比  
SELECT   
    (SELECT COUNT(*) * 1.0 FROM cltms_enterprise_talent_cache WHERE POLITICAL_OUTLOOK = '中共党员') /   
    (SELECT COUNT(*) * 1.0 FROM cltms_enterprise_talent_cache) * 100 AS percentage_party_member  
  
UNION ALL  
  
-- 计算B/C的百分比  
SELECT   
    (SELECT COUNT(*) * 1.0 FROM cltms_enterprise_talent_cache WHERE POLITICAL_OUTLOOK != '中共党员') /   
    (SELECT COUNT(*) * 1.0 FROM cltms_enterprise_talent_cache) * 100 AS percentage_non_party_member;

在这个更新后的查询中,我们将每个子查询中的COUNT(*)结果乘以了1.0,以确保在进行除法运算时得到的是浮点数结果。这样,最终计算出的百分比也会是浮点数。

4.select gg_update_datetime from BIZ_LIMIT_PERSON_REP 对搜索到的结果只取前四位数字,如何修改查询语句

SELECT YEAR(gg_update_datetime) AS year_only  
FROM BIZ_LIMIT_PERSON_REP;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旧岛江少

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值