Я пытаюсь написать корзину покупок в заказ + orderline в базе данных sql из C# asp.net. в строке заказа будет указан номер заказа, общая стоимость, productid, количество и т. Д. Для каждого товара в корзине. Сам заказ будет содержать номер порядка в качестве первичного ключа и будет связан с различными линиями через него. Вчера все работало нормально, но теперь, когда я попытался использовать команду SELECT во вставке в оператор, чтобы получить более динамичную динамику, я получаю описанную выше синтаксическую ошибку.INSERT INTO ... SELECT синтаксическая ошибка в операторе объединения
Кто-нибудь знает, что случилось с этим утверждением:
INSERT INTO [order]
(klant_id,totaalprijs,btw,subtotaal,verzendkosten)
SELECT klant.id
, SUM(orderregel.totaalprijs)
, SUM(orderregel.btw)
, SUM(orderregel.totaalprijs) - SUM(orderregel.btw)
, 7.50
FROM orderregel
INNER JOIN
klant
ON [order].klant_id = klant.id
WHERE klant.username = 'jerry'
GROUP BY
id;
ORDERNUMBER в таблице «порядок» на AutoNumber, в осины коде существует для каждого, который обрабатывает строки записываются для каждого продукта , есть индекс, установленный на 0 вне этого цикла и усиленный с 1 каждым его концом. Выполнение заказа выполняется только один раз в начале первого цикла, и строки добавляются после MAX (номер порядка) в качестве номера порядка.
Надеюсь, я предоставил достаточно информации, и кто-то может мне помочь. Спасибо заранее!
EDIT: спасибо всем, используя этот запрос!
INSERT INTO [заказать] (klant_id, totaalprijs, кстати, subtotaal, verzendkosten) SELECT (ВЫБОР klant.id ОТ klant ГДЕ klant.username = 'канистра'),
SUM (orderregel.totaalprijs), SUM (orderregel.btw),
SUM (orderregel.totaalprijs) - SUM (orderregel.btw), 7.50 От
orderregel;
EDIT Ваш запрос не будет работать. Попробуйте вставить два заказа. Затем проверьте, если общая стоимость для вашего второго порядка является правильной. – Andomar
Ммм да, я заметил, что это, видите ли вы исправить здесь? Я пытался делать это в одиночку, но в настоящее время Бюсся быть на работе весь день и программирование после получения домой не слишком хорошо для моего процесса учили;) – user1477356
Вы должны были бы выяснить, как вставить связь между порядком и строкой заказа. Там и возможное решение в моем ответе. Я бы спать ночью на это :) – Andomar