【问题标题】:Want to make a condition based on Friday想在星期五做一个条件
【发布时间】:2019-08-12 04:49:55
【问题描述】:

我使用 Flyway 和 Postgres 我想要的是:

如果今天是Friday:

INSERT INTO APP(ID, DAY, NAME) VALUES (1, NOW() + INTERVAL '3 DAY', 'foo');

其他

INSERT INTO APP(ID, DAY, NAME) VALUES (1, NOW() + INTERVAL '1 DAY', 'foo');

【问题讨论】:

  • 好的。你有逻辑。在您的应用程序中使用它。你有什么问题?
  • @GordonLinoff,怎么写(IF .. ELSE ...)?它位于 FlyWay 使用的 SQL 文件中。
  • 在 VALUES 子句中使用 case 表达式。

标签: sql postgresql flyway


【解决方案1】:

使用case when 表达式

INSERT INTO APP(ID, DAY, NAME) 
    VALUES (1, case when to_char(NOW(), 'Dy')='Fri' then NOW() + INTERVAL '3 DAY' else NOW() + INTERVAL '1 DAY' end, 'foo')

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-02
    • 2020-09-03
    • 1970-01-01
    • 2021-12-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多