【问题标题】:Trying to SELECT certain rows from TABLE where values are DISTINCT尝试从 TABLE 中选择值不同的某些行
【发布时间】:2013-05-31 03:11:23
【问题描述】:

我正在尝试返回具有 DISTINCT 字段的行,但 SELECT 属于不同的字段。其背后的原因是因为此查询位于 UNION 查询之间。所以我需要输出以匹配其他查询输出的内容。很难解释,这里举个例子:

UNION---

SELECT * FROM 
(SELECT DISTINCT Value1 || Value2 || Value3 as DESCRIPTION, Value4
 FROM TABLE
 WHERE Value5 = <some distinct value>)
WHERE Value6 = 1

---UNION

所以基本上我希望输出为 2 列,这样所有 UNION 查询都会有一个很好的输出。我想我只是不知道使 WHERE 子句使用不同值的语法。

【问题讨论】:

  • 也许您需要 GROUP BY 代替?
  • 您的查询有什么问题?这可能有助于我们了解如何让它变得更好。

标签: sql select distinct


【解决方案1】:

您的查询在子查询之外没有value6。您需要将其表达为:

SELECT *
FROM (SELECT DISTINCT Value1 || Value2 || Value3 as DESCRIPTION, Value4
      FROM TABLE
      WHERE Value5 = <some distinct value> and
            Value6 = 1
     ) t

不过,我不知道这是否有助于解决您的问题。

顺便说一句,是否有一种将from 放在行尾的格式样式?我不时看到这个,只是不明白。他们的人类真的更喜欢这个吗?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-29
    • 2018-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-17
    相关资源
    最近更新 更多