【问题标题】:when case planshipdate<today sqlsever & mysql当案例计划日期<今天 sql server & mysql
【发布时间】:2021-09-23 03:10:36
【问题描述】:

我需要在什么时候显示所有记录

  1. planshipdate 迟到
  2. plandeliverdate 延迟交货
  3. 状态名称(招标、预订)==> 没有 EDI 更新

【问题讨论】:

  • 你必须明确你的数据模型。
  • “显示所有记录”暗示了一个过滤器,但您的神秘要点暗示了计算值的逻辑。请澄清您的问题,专注于特定的 dbms 引擎,并提供示例输入和所需的输出。远距离读心术效果不佳。

标签: mysql sql sql-server mysql-workbench


【解决方案1】:

你似乎知道这是什么情况:

SELECT 
  CASE 
    WHEN planshipdate<NOW() THEN 'late collection'
    WHEN plandeliverdate<NOW() THEN 'late delivery'
    WHEN statusname in ('tendered', 'booked') THEN 'no EDI update'
  END
FROM
  ...

你只需要决定你正在使用哪个数据库,如果它是 sql server,则将 NOW 换成 getUtcDate

【讨论】:

    猜你喜欢
    • 2015-12-24
    • 2012-07-08
    • 1970-01-01
    • 1970-01-01
    • 2015-05-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多