Forum Webscript.Ru
Общие => Базы данных => Тема начата: Kubik от 19 Апреля 2002, 00:18:51
-
Помогите написать SQL запрос для:
есть две таблици:
spisok info
|--|--|--|--| |--|----|
|id|c1|c2|c3| |id|name|
|--|--|--|--| |--|----|
| 1| 1| 0| 0| | 1|xxx1|
| 2| 0| 0| 0| | 2|xxx2|
| 3| 1| 1| 0| | 3|xxx3|
| 4| 2| 0| 0| | 4|xxx4|
| 5| 3| 0| 1| | 5|xxx5|
|--|--|--|--| |--|----|
поля c1,c2,c3 в таблице spisok являются указателями на id в info
в итоге надо получить результируюшую выбору
| 1|xxx1|
| 3|xxx1|
| 3|xxx1|
| 4|xxx2|
| 5|xxx3|
| 5|xxx1|
можно ли такое сделать одним SQL запросом? мысли шлите на serg@ens.ru
-
можно ли такое сделать одним SQL запросом?
Можно. Тройной LEFT JOIN, но лучше сделать последовательно тремя запросами.
-
Спасибо за ответ. Можно привести пример? Кстити, у меня этих c1,c2,c3...,c16, но можно и для трех.
-
Спасибо за ответ. Можно привести пример? Кстити, у меня этих c1,c2,c3...,c16, но можно и для трех.
select a.id,b.name from spisok as a left join info as b on a.c1 = b.id
select a.id,b.name from spisok as a left join info as b on a.c2 = b.id
и т.д.
-
дык это очевидно. мне то надо одним запросом без UNION и других отсутствующих в MySQL 3.x прибомбасов!!!
-
дык это очевидно. мне то надо одним запросом без UNION и других отсутствующих в MySQL 3.x прибомбасов!!!
Русским по бэкграунду написал, что так лучше не делать.
-
причем тут лучьше или хуже? надо одним запросов, надо!
-
Kubik
Можно. Тройной LEFT JOIN
-
пример дайте тупому.....пожалуйсто