检索一列而不是另一列的不同 SQL 查询结果
Posted
技术标签:
【中文标题】检索一列而不是另一列的不同 SQL 查询结果【英文标题】:Retrieve distinct SQL query results for one column and not the other column 【发布时间】:2011-12-12 21:25:14 【问题描述】:我有一个表格,其数据格式如下。我想要的只是一个代码和电话号码。我得到哪个电话号码并不重要,我只需要一个电话号码。
代码电话号码 1000009 (123)752-0108 1000257 (456)718-1229 1000257 (789)750-1057 1000259 (000)000-0001 1000259 (111)453-0522 1000259 (222)460-8947 1000270 (333)528-6468 1000276 (444)384-5571我需要的结果如下所示: 代码电话号码 1000009 (123)752-0108 1000257 (456)718-1229 1000259 (000)000-0001 1000270 (333)528-6468 1000276 (444)384-5571
任何有关 SQL 查询的帮助将不胜感激。谢谢
【问题讨论】:
【参考方案1】:如果给定代码的任何电话号码足够,您可以使用GROUP BY 和任何aggregating functions 来完成此操作
此示例使用MAX
聚合函数。
SELECT Code
, PhoneNumber = MAX(phoneNumber)
FROM Table
GROUP BY
Code
【讨论】:
【参考方案2】:WITH cteRowNum AS (
SLEECT Code, phoneNumber,
ROW_NUMBER() OVER(PARTITION BY Code ORDER BY phoneNumber) AS RowNum
FROM YourTable
)
SELECT Code, phoneNumber
FROM cteRowNum
WHERE RowNum = 1;
【讨论】:
以上是关于检索一列而不是另一列的不同 SQL 查询结果的主要内容,如果未能解决你的问题,请参考以下文章