У меня есть одно интересное требование для достижения. не могли бы вы помочь?
Вы можете найти таблицы нижеSQL to Join Two Tables with some business conditions
* * CheckingAccountTable (Предположим, что таблица Имя - CAT)
AccountNo TransactionId BalanceID Balance1
123 080 103 $30
123 081 103 $20
123 082 103 $10
123 083 62 $0
123 084 63 $0
123 085 64 $0
123 086 65 $0
123 087 66 $0
124 090 103 $3
124 091 103 $2
124 092 103 $1
124 093 72 $0
124 094 73 $0
124 095 74 $0
124 096 75 $0
124 097 76 $0
SavingsAccountTable (Предположим, что таблица Имя - SAT)
BalanceID Balance2
103 $0
62 $15
63 $12
64 $20
65 $0
66 $0
72 $11
73 $0
74 $0
75 $0
76 $0
результат должен СМОТРЕТЬ, КАК
AccountNo Count(TransactionId) Sum(Balance1+Balance2)
123 6 107
124 4 17
Ok, здесь CAT главная таблица и СБ является суб стол, чтобы вернуть баланс я хочу узнать кол-TransactionID-х и Sum (Balance1 + Баланс 2)
условий. Если Balance1 ИЛИ Баланс 2 равен 0, я не могу взять TransactionID в кол
Am не в состоянии для того чтобы достигнуть его, выполнив ниже
SELECT T.AccountNo,Count(T.TransactionId),
SUM(T.Balance1 + T.Balance2) 'Stressdays'
FROM
(
SELECT CAT.AccountNo,CAT.Balance1,CAT.BalanceID,CAT,TransactionId
,CASE WHEN SAT.BalanceID= 103 THEN
0
ELSE
SAT.Balance2
END AS 'Balance2'
FROM CAT
INNER JOIN SAT ON CAT.BalanceID = SAT.BalanceID
WHERE CAT.Balance1 <> 0
AND SAT.Balance2 <> 0
)T
GROUP BY T.AccountNo
Пожалуйста Descr ibe проблема, которую вы испытываете с вашим запросом? Это возвращает ошибку? Возвращает ли он неправильные результаты? –
У меня проблемы с пониманием желаемого результата: как у вас может быть сумма (Balance1, Balance2) = 107 для AccountNo = 123? Для любой записи задействовано либо Balance1 = 0, либо Balance2 = 0, поэтому по вашему запросу оно должно быть нулевым ... Наверное, это моя ошибка, но я не понимаю ... – Marco