gpt4 book ai didi

mysql - 根据表优先级获取mysql结果

转载 作者:行者123 更新时间:2023-11-29 23:23:31 25 4
gpt4 key购买 nike

在我的网站中,我想实现实时数据搜索。我有两个表 table_atable_b

table_a 包含主数据,table_b 包含从 table_a 引用的子数据。

我正在得到结果。但连接赋予 table_b 数据以重要性。

我想获取数据

1.如果table_a有特定结果,则显示其相应的table_b数据。

  • 如果 table_a 没有该值,则显示 table_b 数据(如果有)
  • 我现在执行的查询是

    SELECT
    a.aname,
    b.bname
    FROM
    table_a AS a
    JOIN table_b AS b ON b.a_id_fk = a.a_id
    WHERE
    (a.a_name LIKE '%a%' OR b.b_name LIKE '%a%')

    我知道这不会根据我的需要得到结果。

    有什么方法可以通过单个查询来完成此操作吗?

    任何帮助将不胜感激。谢谢大家。

    最佳答案

    如果 table_a 没有该值,则显示 table_b 数据(如果有)

    如果我理解正确的话

    SELECT
    case when a_id is null then b.bname else a.aname end as name,

    FROM
    table_b AS b left join table_a AS a
    ON b.a_id_fk = a.a_id
    WHERE
    (a.a_name LIKE '%a%' OR b.b_name LIKE '%a%')

    关于mysql - 根据表优先级获取mysql结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27118961/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com