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

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Объединение в SQL.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


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

> Без описания
Jewish-Man
Отправлено: 26 Сентября, 2011 - 10:20:20
Post Id


Новичок


Покинул форум
Сообщений всего: 13
Дата рег-ции: Авг. 2011  


Помог: 0 раз(а)




Здравствуйте.
Помогите пожалуйста с выборкой данных из трех таблиц.
Есть таблицы drivers, location и parameters.
Необходимо все записи из таблицы drivers с 30 по 50 (id допустим в таблице drivers могут не инкремироваться, а рандомно идти. поэтому надо сделать диапазон по записям), а также чтобы в таблице parameters у этих водителей была скорость (поле speed) равна 50 и в таблице location город, в котором они могли едить (поле city) был Piter.
У меня есть некоторые представления, как это сделать(INNER JOIN), все же надеюсь на вашу помощь. Заранее благодарен.
 
 Top
EuGen Администратор
Отправлено: 26 Сентября, 2011 - 10:26:01
Post Id


Профессионал


Покинул форум
Сообщений всего: 9095
Дата рег-ции: Июнь 2007  
Откуда: Berlin


Помог: 707 раз(а)




Определите как связаны между собой таблицы.


-----
Есть в мире две бесконечные вещи - это Вселенная и человеческая глупость. Но насчет первой .. я не уверен.
 
 Top
MrBeard
Отправлено: 26 Сентября, 2011 - 10:33:34
Post Id



Гость


Покинул форум
Сообщений всего: 97
Дата рег-ции: Авг. 2011  


Помог: 2 раз(а)




CODE (SQL):
скопировать код в буфер обмена
  1. SELECT *
  2. FROM drivers
  3. JOIN location USING(driver_id)
  4. JOIN parameters USING(driver_id)
  5. WHERE `drivers`.driver_id BETWEEN 30 AND 50
  6.     AND `parameters`.speed = 50
  7.     AND `location`.city = "Piter";

примерно так будет, кажется
 
 Top
Jewish-Man
Отправлено: 26 Сентября, 2011 - 10:59:01
Post Id


Новичок


Покинул форум
Сообщений всего: 13
Дата рег-ции: Авг. 2011  


Помог: 0 раз(а)




MrBeard пишет:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT *
  2. FROM drivers
  3. JOIN location USING(driver_id)
  4. JOIN parameters USING(driver_id)
  5. WHERE `drivers`.driver_id BETWEEN 30 AND 50
  6.     AND `parameters`.speed = 50
  7.     AND `location`.city = "Piter";

примерно так будет, кажется


c USING(driver_id) не работает
 
 Top
MrBeard
Отправлено: 26 Сентября, 2011 - 11:18:27
Post Id



Гость


Покинул форум
Сообщений всего: 97
Дата рег-ции: Авг. 2011  


Помог: 2 раз(а)




Jewish-Man пишет:
MrBeard пишет:
CODE (SQL):
скопировать код в буфер обмена
  1. SELECT *
  2. FROM drivers
  3. JOIN location USING(driver_id)
  4. JOIN parameters USING(driver_id)
  5. WHERE `drivers`.driver_id BETWEEN 30 AND 50
  6.     AND `parameters`.speed = 50
  7.     AND `location`.city = "Piter";

примерно так будет, кажется


c USING(driver_id) не работает


я прислал пример, по которому нужно самому построить СВОЙ запрос. ибо тут никто не может создать запрос без знания структур таблиц. ещё раз - это ПРИМЕР)
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« SQL и Архитектура БД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB