![]() |
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]() ![]() ![]() |
|
dimaf1 |
|
|||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 12.3.2009 Репутация: нет Всего: нет |
Имеется три таблицы:
1 - customers (id(первичный ключ), name, surname, phone); Таблица клиентов 2 - products (id(первичный ключ), model, price); Таблица товара 3 - orders (id (первичный ключ), date, customer_id(внешний ключ на поле id таблицы customers), product_id(внешний ключ на поле id таблицы customers), quantity(количество заказаных экземпляров товара), sum(общя сумма к оплате)); Таблица заказов Так вот я хочу узнать как мне написать запрос MySQL на добавление записи в таблицу orders, чтобы в поле "sum" этой таблицы вставлялось значение поля "price" таблицы products у которого поле "id" соответствует полю "product_id" таблицы orders. Т.е. запрос должен выглядеть следующим видом: INSERT INTO orders (date, customer_id, product_id, quantity, sum) VALUES (curdate(), 2, 4, 2, тут должно быть значение price из таблицы orders*quantity) Извиняюсь опечатался не: INSERT INTO orders (date, customer_id, product_id, quantity, sum) VALUES (curdate(), 2, 4, 2, тут должно быть значение price из таблицы orders*quantity) а: INSERT INTO orders (date, customer_id, product_id, quantity, sum) VALUES (curdate(), 2, 4, 2, тут должно быть значение price из таблицы products*quantity) сори Надеюсь понятно объяснил и если что заранее прошу прощения так как только знакомлюсь с MySQL. Это сообщение отредактировал(а) dimaf1 - 2.9.2011, 19:38 |
|||
|
||||
rodnover |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 223 Регистрация: 7.4.2009 Репутация: 2 Всего: 10 |
Вот так:
где select возвращает одну запись с требуемыми полями Это сообщение отредактировал(а) rodnover - 2.9.2011, 18:50 |
|||
|
||||
dimaf1 |
|
||||||
![]() Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 12.3.2009 Репутация: нет Всего: нет |
Спасибо, но так не получится, т.к. мне в запросе INSERT после того как я с помощью SELECT получу из таблицы products необходимое мне значение price, это значение в этом же запросе надо будет умножить на значение quantity таблицы orders, которое должно быть определенно до значения price и вне конструкции SELECT. Зато получилось немного по-другому: ![]()
|
||||||
|
|||||||
rodnover |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 223 Регистрация: 7.4.2009 Репутация: 2 Всего: 10 |
Вы же всё равно quantity из переменной берете. |
|||
|
||||
![]() ![]() ![]() |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | PHP: Базы Данных | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |