Задавайте вопросы, мы ответим
Вы не зашли.
Добрый день!
Вот не могу понять, как правильно написать запрос:
Есть результат другого запроса SELECT * FROM ..., который выглядит примерно так:
station trainnumber arrival departure
Москва 1 NULL 2355
Санкт-Петербург 1 0755 NULL
Москва 3 NULL 2359
Санкт-Петербург 3 0800 NULL
Требуется, чтобы тот же запрос вывел часть этих данных как строки вида
1 2355 0755
3 2359 0800
то есть производил операцию вида
if(station='Москва') SELECT departure; if(station='Санкт-Петербург') SELECT arrival; GROUPBY trainnumber;
Понял, что делать надо через JOIN, но не понимаю, как.
Подскажите плз
Отредактированно ivantonov (13.01.2011 20:29:28)
Неактивен
SELECT trainnumber, group_concat(ifnull(arrival,departure)) FROM ... GROUP BY trainnumber;
или
select t1.trainnumber, t1.departure, t2.arrival from
(исходный запрос) t1 join (исходный запрос) t2 on using(trainnumber)
where t1.arrival is null;
Неактивен
Спасибо!
Второй вариант - то, что нужно.
Неактивен