SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 06.06.2009 18:11:06

serjinio
Завсегдатай
Зарегистрирован: 10.07.2008
Сообщений: 30

Выборка из двух таблиц

Две таблицы categories
c_id | s_id | c_name
1     | 0     | раздел 1
2     | 1     | категория 1
3     | 1     | категория 2
4     | 1     | категория 3
5     | 1     | категория 4

и таблица articles
a_id | a_cat | a_title
1     | 2       | статья 1  категории 1
2     | 2       | статья 2  категории 1
3     | 2       | статья 3  категории 1
4     | 3       | статья 1  категории 2

Каким запросом выбрать поля чтобы получить
категория 1
     статья 1  категории 1
     статья 2  категории 1
     статья 3  категории 1
категория 2
    статья 1  категории 2
категория 3
    NULL
категория 4
    NULL

Отредактированно serjinio (06.06.2009 18:11:56)

Неактивен

 

#2 08.06.2009 13:52:38

Magz
Гуру
Откуда: Москва
Зарегистрирован: 18.09.2007
Сообщений: 112

Re: Выборка из двух таблиц


SELECT c.c_name, a.a_title
FROM categories c LEFT JOIN articles a ON c.c_id = a.a_cat
WHERE c.s_id = 1
 

А потом уже в цикле вычленять статьи для каждой категории. Это будет работать быстрее, чем отдельные запросы для каждой категории.

Отредактированно Magz (08.06.2009 14:00:47)

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson