2013-02-10 1 views
1

Мне нужно немного помощи/направление относительно того, как написать запрос SQL, используя следующую информацию:Написание SQL-запрос решить SQL Puzzle

enter image description here

Вопрос заключается в том:

Менеджер хотел бы видеть все uf машины в настоящее время в выставочном зале и их цене в следующем виде: [Марка] [Модель] - £ [Цена] eg «VW GOLF - 3000». Напишите запрос SQL для удовлетворения этого запроса .

__

Я разбил его о том, как я думаю, что нужно работы-

  • Сначала нужно посмотреть на CarID содержащихся в таблице салона и сопоставить их с ID в таблица автомобиля
  • Затем необходимо отобразить модель автомобиля из таблицы автомобиля

    2,5,8 = фиесты, гольф и 307

  • После того, как имя было найдено, он проверяет ParentCarID, чтобы увидеть, что делают это

    брод, VW и Peugeot

Марка и модель будут отображаться вместе цена делает результат запроса:

CarID Model Make  Price 

2  Fiesta Ford  4000 
5  Golf  VW  3000 
8  307  Peugeot 5000 

_

После просмотра и повторного ADING много о различных запросах я думаю, что мне нужно использовать реляционную запрос или запрос с объединением, я был бы признателен за любую помощь много :)

+1

Пробовали ли вы написания присоединиться запрос и посмотреть на себя, если он работает? –

+0

да, он просто отобразил список всех автомобилей, а не только те, что там, где в столике выставочного зала – user2058186

ответ

0

Вы можете получить марку и модель, вступив в таблицу на себя через ParentID:

SELECT * FROM tableA 
    JOIN tableB ON tableA.ID = tableB.parentID 

Тогда вам просто необходимо присоединиться цены из таблицы автосалона:

SELECT Model.ID, Make.Name, Model.Name, S.Price FROM car Make 
    JOIN car Model ON Make.id = Model.parentCarID 
    JOIN showroom S ON Model.ID = S.CarID 
+0

спасибо большое за ответ, я дам этот ход :) – user2058186

+0

это сработало! Спасибо! – user2058186

0
SELECT a.MakeCode, 
     a.ModelCode, 
     b.Price 
FROM CarTable a 
     INNER JOIN ShowRoom 
      ON a.ID = b.CarID 

Для дальнейшего получить больше знаний о присоединяется, любезно посетить по ссылке ниже:

+0

спасибо за комментарий JW, я попробовал это после просмотра этого видео http://www.youtube.com/watch?v = MJv6ZQlK_ek & list = UUbi5G5PjWBaQUFy7XU_O7yw & index = 34, но он по-прежнему показывает результаты всех автомобилей, а не только в салоне, 2,5 и 8 – user2058186

+0

вы используете 'LEFT JOIN'? –

0

я надеюсь, что этот запрос будет работать еще вы ожидали.

выберите c.Makecode, c.madelcode, s.price из автомобиля с, салон s, где c.id = s.carid