【问题标题】:Database query - not able to frame it [closed]数据库查询 - 无法构建它[关闭]
【发布时间】:2020-07-24 08:40:41
【问题描述】:

让我在这里解释一下问题陈述:

我必须从 2 个表中提取数据。根据用户输入,在后端查询应该首先检查第一个表,如果数据可用则返回并退出。如果数据不可用,应该执行秒查询并返回结果。有人能帮我举个例子,如何在 informix 中使用 if-else 或 CASE 语句吗?

【问题讨论】:

    标签: java mysql sql database informix


    【解决方案1】:

    如果两个查询返回相同的列,则可以表示为:

    select t1.*
    from table1 t1
    union all
    select t2.*
    from table2 t2
    where not exists (select 1 from table1);
    

    如果两个查询所需的列不同,那么您应该在应用程序级别进行处理——运行第一个查询,如果没有返回,则运行第二个查询。无论如何,这实际上可能更可取,因为应用程序中的逻辑更清晰。

    【讨论】:

    • 谢谢。您能否从应用程序方面分享一些示例,您是如何做到的?我已经写好了,如果有的话最好看看代码供参考?
    猜你喜欢
    • 1970-01-01
    • 2020-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多