Я новичок в SQL, я использую SQL Server 2008.Sum сумма по типу питания в SQL Server
В моей базе данных у меня есть 3 таблицы
- Таблица
Type
- Таблица
Invoice
- Таблица
Item
Это моя команда SQL, чтобы получить сумму суммы:
SELECT
tbl_type.type,
((tbl_item.price * qty) - (tbl_item.price * qty * discount)) as totalAfter,
tbl_inv.dateInv
FROM
tbl_type, tbl_item, tbl_inv
WHERE
tbl_inv.dateInv = '2013-03-26 00:00:00'
AND tbl_inv.id = tbl_item.id_invoice
AND tbl_type.id = tbl_item.id_type
ORDER BY
tbl_inv.dateInv;
Так что, когда я запускаю мой запрос будет возвращать
CHICKEN 46.000000 2013-03-26 00:00:00.000
MEAT 3.000000 2013-03-26 00:00:00.000
CHICKEN 69.000000 2013-03-26 00:00:00.000
CHICKEN 46.000000 2013-03-26 00:00:00.000
CHICKEN 69.000000 2013-03-26 00:00:00.000
MEAT 4.500000 2013-03-26 00:00:00.000
Но как это сделать, как это?
CHICKEN 230.000000 2013-03-26 00:00:00.000
MEAT 7.500000 2013-03-26 00:00:00.000
я получите ошибку
Колонка «tbl_item.price» недопустим в списке выбора, поскольку он не содержится ни в статистической функции или предложения GROUP BY.
, когда я использую GROUP BY tbl_type.type
в моей SQL
Спасибо за помощь.
[Вредные привычки пинать: использование старого стиля JOIN и] (http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old -style-joins.aspx) - стиль старого стиля * разделенный запятыми список таблиц * был отменен с помощью ANSI - ** 92 ** SQL Standard (более ** 20 лет ** назад) –