我有3個表:如何在SQL Server 2005/8上獲取類似於表的查詢結果?
users (id, name)
currency (id, name)
accounts (id, user_id, currency_id, amount)
而且我想從accounts
讀取數據,並在表狀觀目前它:
owner currency1 currency2 currency3
1 0 0 0
2 10 20 30
3 0 5 10
凡owner
是accounts.owner
ID
,currency1,2,3
- (SELECT id FROM currency WHERE name = '1',etc)
我只能得到一個特定ID的結果:
SELECT
SELECT amount FROM accounts WHERE currency = (SELECT id FROM currency WHERE name = 'currency1') AND owner = @user) AS [currency1],
SELECT amount FROM accounts WHERE currency = (SELECT id FROM currency WHERE name = 'currency2') AND owner = @user) AS [currency2],
SELECT amount FROM accounts WHERE currency = (SELECT id FROM currency WHERE name = 'currency2') AND owner = @user) AS [currency2]
對於users
表中的每個對象,是否可以得到相同的結果?沒有使用Reporing Service等。
組合(user_id,currency_id)在帳戶中是唯一的嗎? – balpha 2009-07-01 17:11:07
是的,它是獨一無二的。 – abatishchev 2009-07-01 17:24:28