作者sasoric (sasori.c)
看板Database
標題Re: [SQL ] 請教遞迴查詢sql健保眷屬加總金額
時間Fri Oct 15 11:39:20 2021
假設第一張表是f,第二張表是m,概念大概是類似這種query,就可以一次查出來
但我不熟SQL server,再自己微調語法
select ifnull(f.id, m.id) as fid, sum(n.money)
from m left outer join f on f.family_id = m.id
join m as n on m.id = n.id
group by fid;
※ 引述《oherman (感覺放鬆,我愛你)》之銘言:
: (針對 SQL 語言的問題,用這個標題。請用 Ctrl+Y 砍掉這行)
: 資料庫名稱:SQL SERVER
: 資料庫版本:2014
: 內容/問題描述:
: 我有一個眷屬資料表A
: 格式如下: A1下面有A2,C3,D4的眷屬,B1有E5的眷屬
: ID FAMILY_ID
: ===================
: A1 A2
: A1 C3
: A1 D4
: B1 E5
: C2 L6
: 健保資料表B格式如下
: ID MONEY
: =============
: A1 100
: A2 200
: B1 300
: C2 400
: C3 100
: D4 120
: E5 50
: L6 130
: 請問我要如何用sql自動加總出
: A1 AMOUNT=A1+A2+C3+D4,B1 AMOUNT=B1+E5,C2 AMOUNT=C2+L6如下資料表?
: ID AMOUNT
: ============
: A1 520
: B1 350
: C2 530
: 請問各位先進有遇 過相同的問題嗎?要怎麼處理才比較好?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.169.201.235 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Database/M.1634269161.A.81B.html
※ 編輯: sasoric (1.169.201.235 臺灣), 10/15/2021 11:42:50
推 oherman: 謝謝s大,方法可行,本來想寫function結果撈大筆資料時效 10/15 12:07
→ oherman: 能很差,s大的語語2秒就出來結果了,感謝! 10/15 12:07