2013-09-23 4 views
0

Я не владею SQL, но я использую Microsoft Query для создания новой таблицы из старой таблицы и добавления нового столбца (расчетного столбца).SQL добавить расчетный столбец в таблицу

Мои расчетные запросы из той же таблицы. Я действительно хочу получить цифру в долларах с той же даты год назад и предоставить расчетное поле, которое дает рост по годам за год. Каждая учетная запись будет иметь несколько столбцов уникальных данных, кроме даты.

Я думаю, что какой-то запрос, указывающий, что столбцы x, y и z соответствуют, но также включает столбец даты -364.

Если вы можете помочь, я был бы более чем полезным.

Спасибо, Майк

+1

Не лучше хранить вычисленный столбец в базе данных ... вам намного лучше выполнить расчет в то время, когда вы хотите его вычислить, а не хранить результат вычисления (если вы не проигрываете данных и хотите хранить временные агрегаты). Для вас может быть полезным представление. – Twelfth

+0

Используете ли вы 'SQL Server'? –

+0

@Twelfth - я уверен, что это может быть лучше, но это небольшая таблица базы данных, которая может стать больше. Я просто пытаюсь удовлетворить некоторые требования к поставщику, и лучший способ дать им то, что я хочу, - это вычислить этот столбец. – MikeM

ответ

0

Если предположить, что у вас есть accountTotals в той же таблице, вы можете присоединиться к этой таблице для себя и указать различные даты в вашей ИНЕКЕ. Запрос должен выглядеть примерно так:

SELECT a.accountingDate, a.accountTotal, 
b.accountingDate, b.accountTotal, (b.accountTotal - a.accountTotal) as ChangeInTotal 
FROM sourceTbl a 
JOIN sourceTbl b on a.x = b.x and a.y = b.y and a.z = b.z 
WHERE a.accountingDate = <current year date> 
and b.accountingDate = <prior year date> 

надеюсь, что это поможет.

+0

Спасибо вам большое! – MikeM

Смежные вопросы