Как правильно составить mysql запрос

179
28 июня 2017, 00:47

Нужно получить id из таблицы fnews, где userid = $_post['userid'] и newsid = $_post['newsid'], при этом получить ещё userid из таблицы news где id = $_post['newsid']

Как можно сделать это одним запросом?

Answer 1

Как-то мудрено все у вас, не понятно в чем разница данных в таблицах fnews и news. Можно поступить проще, выполнить денормализацию данных и все хранить в одной таблице. На практике этот способ применяется часто, он позволяет делать наиболее простые и быстрые запросы. Если данные свести в одной таблице нельзя, то используйте JOIN.

Answer 2
  SELECT 'fnews' source, id 
  FROM fnews
  WHERE userid = $_post['userid'] AND newsid = $_post['newsid']
UNION ALL
  SELECT 'news', userid 
  FROM news 
  WHERE id = $_post['newsid']
Answer 3

Можно попробовать нечто типа:

SELECT fnews.id, news.userid 
FROM fnews 
WHERE fnews.userid = $_POST['userid'] AND fnews.newsid = $_POST['newsid'] 
INNER JOIN news on fnews.newsid = news.id
READ ALSO
Не проходит POST запрос PHP

Не проходит POST запрос PHP

Не проходит POST запрос вот такого вот вида

166
Opencart редактирования кода страниц

Opencart редактирования кода страниц

Здравствуйте, пытаюсь редактироватьtpl шаблоны и css файлы, все сохраняю перезаливаю на сервер, чищу куки

298
Ошибки в логах модификаторов

Ошибки в логах модификаторов

Добрый день, я использую opencart 22

400
Проблема в скрипте

Проблема в скрипте

Страница, на которой установлен данный код, используется для начисления процента от депозита раз в суткиВсе бы ничего, но через каждые сутки...

216