MySQL-将计数插入表中

时间:2017-07-17 15:57:25

标签: mysql

我正在尝试创建一个包含特定列计数的新表。我希望计数的列包含不同的组织名称。我创建了一个新表,其中包含两个列,一个用于计数,另一个用于组织名称。我能够让计数工作,但我无法弄清楚如何插入表中。 这就是我目前所拥有的:

INSERT INTO ORG_countnumber (COUNT_number, OrgLBN)
SELECT 
    COUNT(*), OrgLBN FROM ORG_NPI_HumanName_Add_Phone GROUP BY OrgLBN
as COUNT_number,
OrgLBN
AS OrgLBN
FROM ORG_NPI_HumanName_Add_Phone; 

提前致谢!

2 个答案:

答案 0 :(得分:1)

我认为您查询的前半部分是在正确的轨道上:

INSERT INTO ORG_countnumber (COUNT_number, OrgLBN)
SELECT COUNT(*), OrgLBN
FROM ORG_NPI_HumanName_Add_Phone
GROUP BY OrgLBN

但正如评论中所建议的那样,这里的观点可能更有意义:

CREATE VIEW orgCountView AS
SELECT COUNT(*), OrgLBN
FROM ORG_NPI_HumanName_Add_Phone
GROUP BY OrgLBN

视图有意义的原因是表中的计数可能一直在变化,因此ORG_countnumber表中的数据很容易变得陈旧。视图将允许您在不提交新表的情况下获取最新数字。

答案 1 :(得分:0)

您将GROUP BY放在错误的位置。

INSERT INTO ORG_countnumber (COUNT_number, OrgLBN)
SELECT 
    COUNT(*) as COUNT_number, OrgLBN
FROM ORG_NPI_HumanName_Add_Phone
GROUP BY OrgLBN;