Mam pewien problem, otóż nie rozumiem, dlaczego nie działa mi poniższe zapytanie w tej postaci - tzn. zwraca pusty wynik.
Natomiast, kiedy zastąpię SELECTy z WHEREa liczbą - wszystko jest okej i dane się wyciągają.
Oto zapytanie:
SELECT DISTINCT(`direction`) AS `direction` FROM `i_lines_detail_default` WHERE `order`>'(SELECT `order` FROM `i_lines_detail_default` WHERE `line_id`=1 AND `station_id`=1 )' AND `order`<'(SELECT `order` FROM `i_lines_detail_default` WHERE `line_id`=1 AND `station_id`=2 )'
A oto zawartość i struktura tabelki:
CREATE TABLE IF NOT EXISTS `i_lines_detail_default` ( `id` int(11) NOT NULL AUTO_INCREMENT, `line_id` int(11) NOT NULL, `station_id` int(11) NOT NULL, `ttns` int(11) NOT NULL, `direction` enum('T','R') NOT NULL, `is_start` enum('0','1') NOT NULL COMMENT 'czy przystanek jest początkowym', `is_stop` enum('0','1') NOT NULL COMMENT 'czy przystanek jest końcowym', `order` int(11) NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=latin2 AUTO_INCREMENT=17 ; -- -- Zrzut danych tabeli `i_lines_detail_default` -- INSERT INTO `i_lines_detail_default` (`id`, `line_id`, `station_id`, `ttns`, `direction`, `is_start`, `is_stop`, `order`) VALUES (1, 1, 1, 2, 'T', '1', '0', 1), (2, 1, 2, 0, 'T', '0', '1', 4), (3, 1, 1, 2, 'R', '0', '1', 4), (4, 1, 2, 0, 'R', '1', '0', 1), (5, 1, 3, 0, 'T', '0', '0', 2), (6, 1, 4, 0, 'T', '0', '0', 3), (7, 1, 4, 0, 'R', '0', '0', 2), (8, 1, 3, 0, 'R', '0', '0', 3), (9, 2, 5, 4, 'T', '1', '0', 1), (10, 2, 6, 3, 'T', '0', '0', 2), (11, 2, 7, 8, 'T', '0', '0', 3), (12, 2, 8, 6, 'T', '0', '0', 4), (13, 2, 9, 12, 'T', '0', '0', 5), (14, 2, 4, 12, 'T', '0', '0', 6), (15, 2, 10, 10, 'T', '0', '0', 7), (16, 2, 11, 0, 'T', '0', '1', 8);
Bardzo proszę o pomoc... jeśli źle skonstruowałem zapytanie, to jakąś ewentualną podpowiedź, jak inaczej mógłbym to zrobić...