【问题标题】:MYSQL: How to limit inner join?MYSQL:如何限制内连接?
【发布时间】:2012-09-07 09:30:01
【问题描述】:

我的查询需要一些帮助。 我有 2 张桌子:

all: art|serie
sootv: name|art|foo

我需要得到像名称|系列这样的结果。 我的查询是:

SELECT t2.NAME,
    t1.serie
FROM (
    SELECT *
    FROM `all`
    WHERE `serie` LIKE '$serie'
    ) t1
INNER JOIN sootv t2
    ON t1.art = t2.art;

它有效,但sootv 表包含类似的数据

name|art|foo
abc | 1 | 5
abc | 1 | 6

我得到 2 个相同的结果。它不是我需要的。 请帮帮我 - 我怎么才能得到一个结果:abc|1

【问题讨论】:

    标签: mysql sql select limit inner-join


    【解决方案1】:

    SELECT 子句上添加DISTINCT

    SELECT DISTINCT t2.NAME,
           t1.serie
    FROM (
        SELECT *
        FROM `all`
        WHERE `serie` LIKE '$serie'
        ) t1
    INNER JOIN sootv t2
        ON t1.art = t2.art;
    

    或尝试优化它

    SELECT DISTINCT t2.NAME,
           t1.serie
    FROM `all` t1
          INNER JOIN sootv t2
              ON t1.art = t2.art
    WHERE t1.`serie` LIKE '$serie'
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-07-04
      • 1970-01-01
      • 2014-11-26
      • 2018-10-15
      • 2018-12-25
      • 1970-01-01
      • 2016-08-12
      相关资源
      最近更新 更多