|
|
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
Есть вот такой запрос: Код: plaintext 1. 2. 3. таесть есть 3 таблицы, в одной список текстов, во второй списаок рубрик, а третья связывает эти тексты с рубриками(она нужна для того чтобы один текст пренадлежал нескольким рубрикам). Так вот этот запрос работает без проблем, но он выбирает только те рубрики у которых есть пренадлежащие тексти, а мне нужно чтобы вибирал все рубрики(и пустые тоже). Как сделать такое соединение в майСКЛ я не знаю, в Оракл я делал с помощью оператора (+), а здесь как???? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2005, 21:01 |
|
||
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
left join ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.02.2005, 23:07 |
|
||
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
а поподробней, как мне это запрос переписать, или где нпйти хорошую доку по МайСКЛ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2005, 13:54 |
|
||
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
1. Скажу по секрету, начиная с 9i в Oracle тоже есть left join 2. Быстее найти по поиску ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2005, 14:08 |
|
||
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
select tbl_cats_tree.c_id, tbl_cats_tree.c_name, count(*) as c_count from tbl_cats_tree left join tbl_texts inner join tbl_cat_text on tbl_texts.t_id=tbl_cat_text.ct_text on tbl_cats_tree.c_id=tbl_texts.ct_cat where tbl_cats_tree.c_parent='5' group by tbl_cats_tree.c_id, tbl_cats_tree.c_name order by tbl_cats_tree.c_ord или как то так, не очень в суть названий таблиц вникал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.02.2005, 18:39 |
|
||
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
Хорошо, тогда для простоты примера я взял 2 таблицы и сделал вот какой запрос(с left join) Код: plaintext 1. 2. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2005, 14:08 |
|
||
|
Как сделать такую выборку??
|
|||
|---|---|---|---|
|
#18+
Relaxxx Код: plaintext 1. 2. почему так??? Потому что count(*) надо изменить на count(t.*) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2005, 14:21 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=32911712&tid=1854349]: |
0ms |
get settings: |
12ms |
get forum list: |
21ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
210ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
2ms |
| others: | 262ms |
| total: | 581ms |

| 0 / 0 |
