2012-01-17 6 views
0
SELECT Projects.Projectid, Projects.ProjectNumber, Projects.ProjectName, 
     Projects.ProjectBudgetedIS, Projects.ProjectSpentIS, 
     Projects.ProjectBudgetedBusiness, Projects.PorjectSpentBusiness, Project.Status, 
     ProjectStatus.Status AS Expr1 

FROM Projects 
    INNER JOIN ProjectStatus ON Projects.Status = ProjectStatus.StatusID 
WHERE Projects.Status = @Status 

Так что я хочу сделать, это взять сумму таблицы с именем счетов-фактур, который имеет поле, называемое ISorBusiness и поле, называемое totalspent и хранить эти данные в Tabel проектов в соответствующее поле. Так что, когда я получаю счет-фактуру, которая взимается с IS, она берет эту сумму и закатывает ее в Projects.ProjectSpentIS, и, если я получу счет-фактуру, то есть дело, оно переводит его в Projects.ProjectBudgetedBusiness.SQL выберите сумму от двух, где положения

Я знаю, что это должно быть легко и извините за вопрос noobish. Заранее спасибо!

+0

Действительно ли вы _need_ для хранения совокупных данных? Требуется ли ** много ресурсов для этого? Хранение таких данных является нарушением практики нормализации, и вы будете очень быстро укусить вас. Кажется, вы также утверждаете, что хотите перевернуть его в то, что, вероятно, является неправильным полем (это не должно быть «ProjectSpentBusiness»). Лично я хотел бы немного реорганизовать дизайн, поэтому я не ограничиваюсь строго 2 категориями (даже если я использую только 2). –

ответ

2

Я хотел бы сделать что-то вроде:

SELECT SUM(CASE WHEN (IsOrBusiness = 'IS') THEN totalSpent ELSE 0 END) AS IsSpent, 
     SUM(CASE WHEN (IsOrBusiness = 'Business') THEN totalSpent ELSE 0 END) AS BusinessSpent 
FROM Invoices 

Очевидно, что использование зависит от того, вы пытаетесь написать запрос вставки или выберите эти данные как часть запроса на выборку вы публикуемую.

+0

спасибо! это здорово! – jerad