Помогите объединить запрос sql

программирование php MySQL базы данных sql

Есть два запроса которые забирают данные из 2х таблиц.

1. SELECT * FROM users WHERE login = '$login'

И

2. SELECT coast FROM tariffs WHERE id='$tariff_id'

$tariff_id - он получает с поля tariff_id в первом запросе.

Мне необходимо ввести все это в один запрос который выдаст все поля таблицы users и поле coast с таблицы tariffs в зависимости от значения tariff_id в таблице users .

Заранее спасибо за помощь!

Примечание:
Попробовал

SELECT * FROM users INNER JOIN tariffs ON users.tariff_id = tariff.id WHERE login = '$login

Не проходит (((
Ответы:
Оператор JOIN в помощь.
UNION?
Запрос по твоему условию. Если не проходит - проверяй, верны ли данные в таблицах, через которые проходит соединение.
SELECT u.*, t.coast
FROM users u
 INNER JOIN tariffs t ON (u.tariff_id = t.id)
WHERE login = '$login'
1. WHERE login = '$login' - не есть хорошо, рекомендую использовать PDO с подстановкой параметров (WHERE login = :login).
2. SELECT * - в случае дублирования имен колонок даст кашу (в случае assoc выборки), вместо * - пишите поля, которые действительно вам нужны.
3. Если INNER не катит - и поле users.tariff_id обязательное - поздравляю, ваша БД не целостная и 100% гарантии правильности отображения вы не имеете. Вместо INNER пробуйте RIGHT / LEFT, на крайняк CROSS


11 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.