【问题标题】:SQL query to count and list the different counties per zip codeSQL 查询计算并列出每个邮政编码的不同县
【发布时间】:2009-07-21 16:40:44
【问题描述】:

我有一个名为 ZipCode 的 sql server 2005 表,其中包含所有美国邮政编码。对于每个条目,它都会列出邮编、县、市、州和其他一些详细信息。

有些邮政编码跨越多个城市,有些甚至跨越多个县。结果,一些邮政编码在表格中出现了很多次。

我正在尝试查询该表以查看哪些邮政编码跨越多个县。

这是我目前所拥有的:

select
    zipcode,
    count(zipcode) as total,
    county,
    state
from
    zipcode
group by
    zipcode,
    county,
    state
order by
    zipcode

在结果集中的 19248 条记录中,这里是返回的前几条记录:

zipcode total   county  state
00501   2   SUFFOLK NY
00544   2   SUFFOLK NY
00801   3   SAINT THOMAS    VI
00802   3   SAINT THOMAS    VI
00803   3   SAINT THOMAS    VI
00804   3   SAINT THOMAS    VI
00805   1   SAINT THOMAS    VI
00820   2   SAINT CROIX VI
00821   1   SAINT CROIX VI
00822   1   SAINT CROIX VI
00823   2   SAINT CROIX VI
00824   2   SAINT CROIX VI

在这个特定的示例中,总共有两个或更多的每个 zip 恰好在表中不止一次,这是因为“cityaliasname”(未显示)或其他一些列不同。但我只想知道哪些拉链不止一次,因为县列不同。

我在发布之前进行了搜索,发现了很多关于计数记录的问题,但我不知道如何将它们应用于我的问题。如果已经有一个问题的答案适用于此问题,请见谅。

【问题讨论】:

    标签: sql-server-2005


    【解决方案1】:
    SELECT
        zipcode,
        COUNT(DISTINCT county)
    FROM
        zipcode
    GROUP BY
        zipcode
    HAVING
        COUNT(DISTINCT county) > 1
    

    【讨论】:

    • 你想要count(distinct county)
    • 我通过检查城市字段来验证此查询是否有效。然而,我的数据显然没有包含多个县的邮政编码,尽管消息来源说有!那好吧!不过,谢谢你的帮助。
    【解决方案2】:

    选择邮政编码,计数(县) 从表 按邮政编码分组

    【讨论】:

      猜你喜欢
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多