【问题标题】:Combine two tables with same DB SELECT statements将两个具有相同 DB SELECT 语句的表合并
【发布时间】:2022-07-01 16:34:42
【问题描述】:

大多数人指示您不应在一个请求中建立一堆数据库连接。所以我尝试合并下表(car & bike)但失败了。知道如何将两者结合起来并避免重复条目,例如每辆汽车和自行车的 name 列中的相同名称吗?

SELECT * FROM car WHERE price NOT LIKE '' order by id asc

SELECT * FROM bike WHERE price NOT LIKE '' order by id asc

【问题讨论】:

  • 你能通过一些样本数据来定义这里的“重复”吗?
  • 例如,每辆汽车和自行车都使用相同的name

标签: sql database mysqli


【解决方案1】:

如果要删除重复项,即定义为具有相同名称的两辆汽车或自行车,您可以在两个表之间使用联合:

SELECT name FROM car
UNION
SELECT name FROM bike;

如果carbike 表恰好具有不同的结构(即不同的列和/或列类型),那么您需要指定要合并到哪些 列在最终结果集中。

【讨论】:

    【解决方案2】:

    您可以使用UNION,它也会删除重复项。也不需要LIKE,因为您没有使用模式:

    SELECT name FROM car WHERE price <> '' order by id asc
    UNION 
    SELECT name  FROM bike WHERE price <> '' order by id asc
    

    【讨论】:

      猜你喜欢
      • 2010-11-24
      • 2011-02-19
      • 2015-07-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多