Проблема с запросом

Статус
В этой теме нельзя размещать новые ответы.

rex1963

Гуру форума
Регистрация
19 Фев 2007
Сообщения
228
Реакции
51
Структура таблиц:
tb praktik

praktik_id | name

tab score

praktik_id | event_id | score

tab event

date | type | event_id

Делаю запрос:
SELECT praktik.praktik_id, praktik.name, event.date, score.score AS score, event.type FROM praktik, event LEFT JOIN score ON praktik.praktik_id = score.praktik_id AND event.event_id = score.event_id WHERE event.event_id = $event_id ORDER BY praktik.name

результата нет:nezn: Подскажите в чем проблема?
 
можеш сделать так:
SELECT
praktik.praktik_id,
praktik.name,
event.date,
score.score AS score,
event.type
FROM praktik, event, score
WHERE event.event_id = 1
and event.event_id = score.event_id AND praktik.praktik_id = score.praktik_id
ORDER BY praktik.name;

или так:

SELECT
praktik.praktik_id,
praktik.name,
event.date,
score.score AS score,
event.type
FROM praktik
left join score on praktik.praktik_id = score.praktik_id
left join event on event.event_id = score.event_id
WHERE event.event_id = 1
ORDER BY praktik.name
 
Работает, да немного неправильно.:confused:
Мне нужно объединение с выборкой пустых строк, а второй запрос этого не делает((
 
Жаль структура не совсем ясна... Еслти отрезаються строки, пробуй вместо лефт использовать RIGHT, или FULL... Сейчас всё присоеденяеться к таблице практик... тоесть сколько строк в траблице практик столько строк будет в результате.
SELECT
praktik.praktik_id,
praktik.name,
event.date,
score.score AS score,
event.type
FROM praktik
left join score on praktik.praktik_id = score.praktik_id
left join event on event.event_id = score.event_id
WHERE event.event_id = 1
ORDER BY praktik.name
 
А что именно ты ожидаешь?? Начни с этого!
Напиши пример того что хочешь увидеть
 
Проблему решил таким запросом
PHP:
SELECT praktik.praktik_id, praktik.name, event.date, score.score AS score, event.type FROM praktik INNER JOIN event LEFT JOIN score ON praktik.praktik_id = score.praktik_id AND event.event_id = score.event_id WHERE event.event_id = $event_id ORDER BY praktik.name

Спасибо всем за помощь.:yahoo:
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху