ฉันมีฐานข้อมูล SQL Server ขององค์กรและมีแถวที่ซ้ำกันจำนวนมาก ฉันต้องการเรียกใช้คำสั่ง select เพื่อจับสิ่งเหล่านี้และจำนวนของ dupes แต่กลับด้วยรหัสที่เกี่ยวข้องกับแต่ละองค์กร
คำสั่งเช่น:
SELECT orgName, COUNT(*) AS dupes
FROM organizations
GROUP BY orgName
HAVING (COUNT(*) > 1)
จะคืนสิ่งที่ชอบ
orgName | dupes
ABC Corp | 7
Foo Federation | 5
Widget Company | 2
แต่ฉันต้องการคว้ารหัสของพวกเขาด้วย มีวิธีการทำเช่นนี้? อาจจะชอบ
orgName | dupeCount | id
ABC Corp | 1 | 34
ABC Corp | 2 | 5
...
Widget Company | 1 | 10
Widget Company | 2 | 2
สาเหตุที่ยังมีตารางผู้ใช้แยกต่างหากที่เชื่อมโยงไปยังองค์กรเหล่านี้และฉันต้องการรวมพวกเขา (ดังนั้นให้ลบรายการที่ซ้ำกันเพื่อให้ผู้ใช้เชื่อมโยงไปยังองค์กรเดียวกันแทนที่จะเป็นองค์กรที่มีผู้ล่อลวง) แต่ฉันต้องการแยกชิ้นส่วนด้วยตนเองดังนั้นฉันจึงไม่ผิดพลาด แต่ฉันยังต้องการคำสั่งที่ส่งคืน ID ของกลุ่มเป้าหมายทั้งหมดเพื่อให้สามารถผ่านรายการผู้ใช้