Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Что то непойму с реализации так называемых Многотабличных Запросов.
 
 автор: Fddd   (07.03.2007 в 15:02)   письмо автору
 
 

Что то непойму с реализации так называемых Сложных Запросов.
Вот допустим есть одна таблица (stat):

+-----------+-----------+
| id | name |
+-----------+-----------+
| 1 | lol |
+-----------+-----------+
| 2 | pro |
+-----------+-----------+

Вней указывается статус(ну к примеру пользователя).
id - номер статуса,
name - имя статуса

И есть вторая таблица (user) со самими пользователями.
id - номер пользователя,
name - фамилия пользователя,
status - номер статуса из таблицы stat.

+------+----------- +----------+
| id | name | status |
+------+----------- +----------+
| 1 | Иванов | 2 |
+------+----------- +----------+
| 2 | Петров | 1 |
+------+----------- +----------+

Ну а задача - тупо вывести Фамилию пользователя и его статус.

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

Но разве так по идее делается? Как лучше осуществить?

   
 
 автор: Trianon   (07.03.2007 в 15:49)   письмо автору
 
   для: Fddd   (07.03.2007 в 15:02)
 

Через JOIN
Так:

SELECT user.id, user.name, stat.name AS userstatus
  FROM user JOIN stat ON user.status = stat.id

или даже так:

SELECT user.id, user.name, COALESCE(stat.name, user.status)  AS userstatus
  FROM user LEFT JOIN stat ON user.status = stat.id


Между прочим, это не сложный запрос, а простой. Но многотабличный.

   
 
 автор: Fddd   (07.03.2007 в 16:52)   письмо автору
 
   для: Trianon   (07.03.2007 в 15:49)
 

Спасибо.

>Между прочим, это не сложный запрос, а простой. Но многотабличный.
Спасибо, учту.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования