gpt4 book ai didi

SQL 服务器 : multiple rows with same column values except one

转载 作者:行者123 更新时间:2023-12-02 07:39:10 28 4
gpt4 key购买 nike

我有这样的数据:

name_text   ----------c_num---d_type-----unique_id----------------------v_text--r_ticket_id
29311875_FAD_V100.doc 3560709 Contract 21DABDDF49BA41289F1905D1D6B79ABF 2,01 28600206
29311875_FAD_V100.doc 3560709 Contract 21DABDDF49BA41289F1905D1D6B79ABF 2,01 28600240
Copy.docx 3560715 Guide 9D06F8EFF4EC4A2D862F5A0DB3BA357B 2 28600219

如果 name_textc_numd_type<,我只想选择 r_ticket_id 列中值较大的一行unique_idv_text 列值相等。

在这些情况下,使用 select 语句应该只获取这些列。

name_text   ----------c_num---d_type-----unique_id----------------------v_text--r_ticket_id
29311875_FAD_V100.doc 3560709 Contract 21DABDDF49BA41289F1905D1D6B79ABF 2,01 28600240
Copy.docx 3560715 Guide 9D06F8EFF4EC4A2D862F5A0DB3BA357B 2 28600219

完成这项工作的确切 SQL 查询是什么?

最佳答案

当记录可能具有相同的唯一 ID 但每一列的值不同时,这可能会有所帮助。利用 ROW_NUMBER 和窗口函数。我猜它们已经出现在 sql-server 2005 上。

SELECT name_text,c_num,d_type,unique_id,v_text,r_ticket_id
FROM
(
SELECT name_text, c_num, d_type, unique_id, v_text, r_ticket_id,
ROW_NUMBER() OVER (PARTITION BY unique_id
ORDER BY r_ticket_id DESC) rn
FROM tableName
) x
WHERE x.rn = 1

SQLFiddle Demo

关于SQL 服务器 : multiple rows with same column values except one,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12998801/

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