|
|
|
| Что то непойму с реализации так называемых Сложных Запросов.
Вот допустим есть одна таблица (stat):
+-----------+-----------+
| id | name |
+-----------+-----------+
| 1 | lol |
+-----------+-----------+
| 2 | pro |
+-----------+-----------+
Вней указывается статус(ну к примеру пользователя).
id - номер статуса,
name - имя статуса
И есть вторая таблица (user) со самими пользователями.
id - номер пользователя,
name - фамилия пользователя,
status - номер статуса из таблицы stat.
+------+----------- +----------+
| id | name | status |
+------+----------- +----------+
| 1 | Иванов | 2 |
+------+----------- +----------+
| 2 | Петров | 1 |
+------+----------- +----------+
Ну а задача - тупо вывести Фамилию пользователя и его статус.
Мои мысли:
Можно сделать запрос по таблице user и потом в цикле сделать второй запрос основываясь на данный из таблицы user.
Но разве так по идее делается? Как лучше осуществить? | |
|
|
|
|
|
|
|
для: 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
|
Между прочим, это не сложный запрос, а простой. Но многотабличный. | |
|
|
|
|
|
|
|
для: Trianon
(07.03.2007 в 15:49)
| | Спасибо.
>Между прочим, это не сложный запрос, а простой. Но многотабличный.
Спасибо, учту. | |
|
|
|