0xd34df00d 09.06.2011 21:34 Azoth_primary

SQL-ач, помоги. Дано: sqlite и таблица в ней, в которой есть две колонки: например, текстовая Message и таймштамповая Datetime. Надо отсортировать это по Datetime, выбрать строку, соответствующую (LIKE) данной строке, и выбрать вокруг нее N других строк. Как?
Ну или хотя бы узнать расстояние между выбранной строкой и последней по дате строкой. Так даже лучше будет, наверное.

1. folex 09.06.2011 21:38 Шindoшs

Вычесть/прибавить к дате N, и сделать 2N+1 запросов? Нихуя-не-умею-скуэль-кун

2. 0xd34df00dfolex /1 09.06.2011 21:39 Azoth_primary

ЭТО БУДЕТ ОЧЕНЬ БЫСТРО.

3. 0xd34df00dfolex /1 09.06.2011 21:39 Azoth_primary

Олсо, что такое «прибавить к дате N»?

4. DZhon 10.06.2011 04:54 Псишечка

SELECT * FROM table WHERE Datetime < (SELECT Datetime FROM table WHERE message LIKE что_надо) ORDER BY DateTime ASC LIMIT N/2
UNION
SELECT * FROM table WHERE Datetime > (SELECT Datetime FROM table WHERE message LIKE что_надо) ORDER BY DateTime ASC LIMIT N/2

Примерно так, если я правильно понял

5. DOMr 10.06.2011 06:58 Psi-work

>>таблиц, колонки, строку, строке, строк,
за такое мой препод по БД расстрелял бы :-D

6. 0xd34df00dDOMr /5 10.06.2011 08:45 Azoth_primary

Препод так придирается к терминологии? Какой паршивый вузик.

7. DZhon0xd34df00d /6 10.06.2011 08:47 Псишечка

Угу, еще небось NoSQL-щиков считает ниасиляторами.

8. 0xd34df00dDZhon /4 10.06.2011 08:49 Azoth_primary

Я тут подумал, что таки второй вариант лучше — select count(1) from azoth_history where Date > (select Date from azoth_history where Message LIKE ':1' order by date desc limit :2);
Но спасибо, твой буду иметь ввиду.

9. DOMrDZhon /7 10.06.2011 09:03 Psi-work

более того, он сам SQL считает поделкой троешников, уважает чистую реляционную алгебру, Кодда, Чена и Дейта. И, кстати, я с ним немного согласен. И по поводу терминогологии тоже, ибо таблица — это что-то заведомо упорядоченное. А "отношение" в реляционной модели — это математической множество. Со всеми его свойставами. А ещё прибавь нормальные формы с "табличкой" тут будет уже мало общего.

10. DOMrDOMr /9 10.06.2011 09:04 Psi-work

*А ещё прибавь нормальные формы, и с "табличкой" тут будет уже мало общего.

11. 0xd34df00dDOMr /9 10.06.2011 09:05 Azoth_primary

Ну, SQL — говно, чистая реляционная алгебра FTW, это все отлично, конечно, но что в продакшене использовать?

12. DOMr0xd34df00d /11 10.06.2011 09:07 Psi-work

SQL. мы разве спорили об этом?

13. DZhonDOMr /9 10.06.2011 09:10 Псишечка

Ты про http://ru.wikipedia.org/wiki/12_%D0%BF%D... хотя бы ? Не знаю, как можно требовать строгости от СУБД, если до сих пор течет срач про NULL-значения.

Do you really want to delete ?