Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Сложный запрос
Форумы портала PHP.SU » » Работа с СУБД » Сложный запрос

Страниц (1): [1]
 

1. Xenox - 30 Сентября, 2015 - 09:57:37 - перейти к сообщению
Господа прошу совета, есть например 2 таблицы,
в одной (table1) поля id, name
во второй(table2) - id, name, second_id
и мне нужно сделать такой sql запрос что бы во вторую таблицу вставить строку,
где к примеру name = "qqq" а second_id = id, у которого name = "www" в первой таблице,
пытаюсь сделать так:
CODE (SQL):
скопировать код в буфер обмена
  1. INSET INTO table2(name, second_id) VALUES ("qqq", (SELECT id FROM table1 WHERE name = "www"));

Но выдает ошибку
CODE (htmlphp):
скопировать код в буфер обмена
  1. You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near

P.S. Если бы можно было бы использовать php решается на раз-два, а тут я уже не знаю что делать...
Заранее спасибо
2. Sail - 30 Сентября, 2015 - 10:21:43 - перейти к сообщению
Xenox, как-то так:
CODE (SQL):
скопировать код в буфер обмена
  1. INSERT INTO table2(`name`, `second_id`) SELECT 'qqq', id FROM table1 WHERE `name` = 'www'
3. SAD - 30 Сентября, 2015 - 10:23:02 - перейти к сообщению
CODE (SQL):
скопировать код в буфер обмена
  1. INSERT INTO table2(name, second_id)
  2. SELECT "qqq", id
  3.  FROM table1
  4. WHERE name = "www";
4. Xenox - 30 Сентября, 2015 - 10:26:46 - перейти к сообщению
Sail пишет:
Xenox, как-то так:
CODE (SQL):
скопировать код в буфер обмена
  1. INSERT INTO table2(`name`, `second_id`) SELECT 'qqq', id FROM table1 WHERE `name` = 'www'


Спасибо огромное! Все прекрасно работает!))

 

Powered by ExBB FM 1.0 RC1