gpt4 book ai didi

mysql - 计算 SQL 中的重复行数

转载 作者:行者123 更新时间:2023-11-29 12:06:54 31 4
gpt4 key购买 nike

假设我们有以下数据结构:

s_cui   o_cui   year
D000001 D000001 1975
D000001 D000001 1976
D000001 D002413 1976
D000001 D002413 1979
D000001 D002413 1987
D000001 D004298 1976
D000002 D000002 1985
D000003 D000900 1975
D000003 D000900 1990
D000003 D004134 1983
D000003 D004134 1986

我需要计算重复对(在第一列和第二列中),并为每个这样的对分配第三列中的最低值。对于此示例,输出应为:

s_cui   o_cui   freq  year
D000001 D000001 2 1975
D000001 D002413 3 1976
D000001 D004298 1 1976
D000002 D000002 1 1985
D000003 D000900 2 1975
D000003 D004134 2 1983

我的初步尝试在这里(没有年份字段):

SELECT s_cui, o_cui, COUNT(*) FROM table GROUP BY s_cui, o_cui;

最佳答案

你已经很接近了!您只需要添加分钟(年)。

看起来您想要每个 s_cui、o_cui 和 count 中最早出现的一年。

SELECT s_cui, o_cui, COUNT(*) freq, min(`year`) as `year`
FROM table
GROUP BY s_cui, o_cui;

Min(year) 将返回 s_cui 和 o_cui 每对的最早年份,同时仍保留计数。我把 ` 放在一年中,因为它是 reserved word in mySQL .

虽然我不明白“配对”如何对每个“组”产生更多影响

关于mysql - 计算 SQL 中的重复行数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31324688/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com