【问题标题】:Is there a way to query a column for the number of times the current records value for that column exists?有没有办法查询该列的当前记录值存在的次数?
【发布时间】:2013-07-23 19:54:00
【问题描述】:

有没有一种方法可以查询该列的当前记录值存在的次数?对于下面的示例,查询看起来像

SELECT ID, Col1, (SELECT COUNT(Col1) WHERE Col1 = Col1) AS Expr1

示例表

ID | Col1
1  | A
2  | B
3  | C
4  | A
5  | B

SELECT 的示例输出

ID | Col1 | Expr1
1  | A    | 2
2  | B    | 2
3  | C    | 1
4  | A    | 2
5  | B    | 2

【问题讨论】:

  • 什么 DBMS(PostgreSQL、MySQL、SQL Server)?
  • 最终我会将查询粘贴到 Access DB 中。我正在加入几个 SharePoint 列表并从中创建一个数据透视表。

标签: sql count


【解决方案1】:

这是一种方法,使用 group-by 和 join 操作。 (这个语法应该很标准)

SELECT a.ID, a.Col1, b.Expr1
FROM MyTable a
INNER JOIN (
    SELECT Col1, COUNT(Col1) AS Expr1
    FROM MyTable
    GROUP BY Col1
) b
ON a.Col1 = b.Col1

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-10-15
    • 2023-03-19
    • 2012-02-16
    • 2011-10-03
    • 2012-10-19
    • 2021-08-26
    相关资源
    最近更新 更多