sql-server - 将日期时间转换为生肖名称
问题描述
我有一个人的出生日期为“12/02/1980 00:00:00”,但我想将其转换为生肖名称。所以我希望12/02/1980显示为Sagittarius。那有可能吗?
解决方案
由于有一个固定的规则来匹配生日和生肖,最简单的方法是 CASE:
CASE
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0120 AND 0219 THEN 'Aquarius'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0220 AND 0320 THEN 'Pisces'
WHEN month(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0321 AND 0419 THEN 'Ares'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0420 AND 0520 THEN 'Taurus'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0521 AND 0620 THEN 'Gemini'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0621 AND 0722 THEN 'Cancer'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0723 AND 0822 THEN 'Leo'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0823 AND 0922 THEN 'Virgo'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 0923 AND 1022 THEN 'Libra'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 1023 AND 1121 THEN 'Scorpio'
WHEN MONTH(DateOfBirth) * 100 + DAY(DateOfBirth) BETWEEN 1122 AND 1221 THEN 'Sagittarius'
ELSE 'Capricorn'
END
推荐阅读
- java - How do I search my ArrayList for a specific persons details? How would i then edit or remove them?
- c# - 我为 Visual Studio 2015 安装了 Crystal Reports,但找不到
- python - 如何使用 Python 在 Maya 2017 中将选定对象添加到 renderLayerSetup?
- amazon-web-services - 通过 route53 模块创建别名 AWS CNAME 域时使用通配符
- python - Python - 调度程序阻止中断
- javascript - 如何使用一个 url 但每个 4 个不同的参数获取 API (POST)
- php - 离子发送 http.post 和 php 接收 GET 请求
- reactjs - 如何使用 Gatsby 和 Contentful 的富文本字段在嵌入块中获取参考字段
- calibration - 眼动追踪校准如何帮助注视估计?
- vue.js - 如何在不使用单文件组件的情况下获得组件范围的 CSS?