MySQL Query из 3 таблиц - PullRequest
       2

MySQL Query из 3 таблиц

0 голосов
/ 09 декабря 2011

У меня есть 3 таблицы.

Mark
id_mark
mark_name

пример записи: 1, 'Ford'


Model
id_model
id_mark
mondel_name

пример записи: 1, 1, 'Focus'


Adds
id_adds
id_model
name
price
etc.

пример записи: 1 1 'Мое объявление', 20000

Как выполнить запрос, который дал результат, пример:

My ad Ford Focus 20000

Ответы [ 3 ]

1 голос
/ 09 декабря 2011

Используя ваше точное написание:

SELECT a.name, mk.mark_name, mo.mondel_name, a.price
FROM Adds a
INNER JOIN Model mo ON mo.id_model = a.id_model
INNER JOIN Mark mk ON mk.id_mark = mo.id_mark

Хотя вместо включения id_mark в таблицу Model, я думаю, у вас должна быть таблица соединения, которая состоит только из id_model и id_mark, а ключ состоит из обоих полей.

0 голосов
/ 09 декабря 2011
select a.name, ma.mark_name, mo.model_name, a.price
from adds a, mark ma, model mo
where a.id_model = mo.id_model
and ma.id_mark = mo.id_mark

Будьте осторожны с моделью данных, если вы сделаете запрос точно так же, и для модели будет более одного знака, вы получите что-то вроде

Мое объявление Ford Focus 20000 Мое объявление Fiat Focus 20000

0 голосов
/ 09 декабря 2011
select adds.id_model, mark.mark_name, model.model_name adds.price
from mark, model, adds
where model.id_mark = mark.id_mark and adds.id_model = model.id_model
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...