5 / 4 / 3
Регистрация: 02.12.2012
Сообщений: 80
|
||||||
1 | ||||||
SELECT в UPDATE (Запрос в запросе). Умножение полей таблиц между собой05.12.2016, 02:25. Показов 7005. Ответов 4
Метки нет (Все метки)
Привет уважаемые посетители этого форума!
Не раз он меня выручал в сложных ситуациях) Надеюсь, что и в этот раз выручит) Есть запрос: К примеру нужно выбрать два поля таблицы (одно с одной, другое с другой) и нужно перемножить значения этих полей между собой и вернуть в нужное поле ТОЛЬКО с помощью UPDATE. Вот как это я пытаюсь сделать:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SET stock.price = products.price_for_one * st.quantity WHERE stock.id_stock = 1' at line 1 Что мне посоветуете (только адекватные решения для этого вопроса)? Что использую MySQL, C#, .NET, SQLconnector for NET. В программе нету ошибок только в запросе.
0
|
05.12.2016, 02:25 | |
Ответы с готовыми решениями:
4
Умножение полей из разных таблиц Умножение полей из разных таблиц Умножение колонок int*float при запросе SELECT (неправильный результат) Подскажите запрос UPDATE ... SELECT |
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
||||||
05.12.2016, 02:34 | 2 | |||||
как-то так
1
|
5 / 4 / 3
Регистрация: 02.12.2012
Сообщений: 80
|
|
05.12.2016, 22:51 [ТС] | 3 |
Не хочет(((
Выдаёт Error Code: 1093. You can't specify target table 'stock' for update in FROM clause
0
|
936 / 693 / 236
Регистрация: 01.02.2015
Сообщений: 1,848
|
||||||
05.12.2016, 23:16 | 4 | |||||
а так
0
|
5 / 4 / 3
Регистрация: 02.12.2012
Сообщений: 80
|
|||||||||||
06.12.2016, 02:43 [ТС] | 5 | ||||||||||
К примеру нашёл вот это:
UPDATE tbl AS a INNER JOIN tbl AS b ON .... SET a.col = b.col --------------------------------------------- UPDATE tbl SET col = ( SELECT ... FROM (SELECT.... FROM) AS x); Как второй попытаться написать? Добавлено через 2 минуты Error Code: 1093. You can't specify target table 'tbl' for update in FROM clause Добавлено через 2 минуты или 1 вариант Добавлено через 2 часа 51 минуту Решено! Но ещё усовершенствовать буду)))
Итак, что делает этот запрос?! Выбираем таблицу в которой необходимо посчитать нужное нам поле. Потом выбираем конкретную строку поля с одной таблицу А затем выбираем конкретную строку поля с другой таблицы В SET пишем нужное нам поле (ячейку) столбца для которой нужно посчитать значение
0
|
06.12.2016, 02:43 | |
06.12.2016, 02:43 | |
Помогаю со студенческими работами здесь
5
UPDATE и SELECT немогу связать запрос Запрос insert в запросе select select-insert-update в одном запросе Умножение двух полей в запросе Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |