powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Вывод сообщений по условию
11 сообщений из 11, страница 1 из 1
Вывод сообщений по условию
    #37440955
exvion
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В таблице содержатся данные вида
id_posttextuser_name1текстuser_1 2текстuser_13текстuser_14текстuser_15текстuser_26текстuser_37текстuser_48текстuser_49текстuser_4

Необходимо вывести только сообщения от пользователей, у которых суммарное количество сообщений равно 1 (имеют по одному сообщению)
Результат:
id_posttextuser_name5текстuser_26текстuser_3
База содержит 50 тысяч сообщений.

Как составить sql запрос? Или здесь одним запросом не ограничиться и необходимо создать дополнительные таблицы, в которых хранить результаты промежуточных запросов?
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37440987
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
select t.id_post, t.text, t.user_name
from 
    (select user_name, count(*)
     from t
     group by user_name
     having count(*)= 1 ) tmp
join t on t.user_name=tmp.user_name
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37441026
Как варианты:
1) not exists
2) left join
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37442460
Stupid_BOT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
White Owl,
можно и лаконичнее

Код: plaintext
1.
2.
3.
--SQLite version 3.7.5
select * from t
group by user_name
having count(*)= 1 ;
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37442635
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Stupid_BOTWhite Owl,
можно и лаконичнее

Код: plaintext
1.
2.
3.
--SQLite version 3.7.5
select * from t
group by user_name
having count(*)= 1 ;
Можно, но соответсвует стандарту и может быть изменено в будущих версиях.
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37442727
Stupid_BOT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot White Owl]Stupid_BOTWhite Owl,
... но соответсвует стандарту и может быть изменено в будущих версиях.Вы хотели сказать "не соответствует".
Дык, и стандарт может быть изменен в "будущих версиях".
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37442762
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quot Stupid_BOT]White Owlпропущено...
Вы хотели сказать "не соответствует".
Дык, и стандарт может быть изменен в "будущих версиях".Угу. Не соответсвует.
И не думаю что изменят стандарт. А вот SQLite поправить могут. Только вчера в рассылке об этом спор шел, да и сегодня продолжают: http://www.mail-archive.com/sqlite-users@sqlite.org/msg63887.html]http://www.mail-archive.com/sqlite-users@sqlite.org/msg63887.html
Там даже напомнили про http://sqlite.org/pragma.html#pragma_reverse_unordered_selects которая поломает твою программу нафиг.
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37442773
Stupid_BOT
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OFFWhite OwlИ не думаю что...

Правильно, не думайте.
Холивар в рассылке улыбнул. И только.
А вот каим образом pagma reverse_unordered_selects "поломает мою программу нафиг" ( это при условии, что я её непонятно зачем в релизе оставлю ) так и не понял. Объясните ?
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37443369
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
White OwlА вот SQLite поправить могут. Только вчера в рассылке об этом спор шел, да и сегодня продолжают...

Прямо так и "поправить" нельзя - сломается множество приложений. И, как минимум, сначала надо добавить реализацию "distinct on", который сейчас эмулируется именно с помощью обсуждаемой фичи. А прения по этому поводу не первый год идут, периодически кто-нибудь в очередной раз их возобновляет :)
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37444060
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGWhite OwlА вот SQLite поправить могут. Только вчера в рассылке об этом спор шел, да и сегодня продолжают...Прямо так и "поправить" нельзя - сломается множество приложений.А это уже будут проблемы тех кто стандарт не соблюдает.

MBGИ, как минимум, сначала надо добавить реализацию "distinct on", который сейчас эмулируется именно с помощью обсуждаемой фичи. А прения по этому поводу не первый год идут, периодически кто-нибудь в очередной раз их возобновляет :)Надо наверное начать долбить... Раз в неделю посылать гневное письмо.... Либо забанят, либо починять :)
...
Рейтинг: 0 / 0
Вывод сообщений по условию
    #37445035
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
White OwlА это уже будут проблемы тех кто стандарт не соблюдает.

Да вы браконьер - обратная совместимость зверь редкий и занесен в красную книгу.

White Owl наверное начать долбить... Раз в неделю посылать гневное письмо.... Либо забанят, либо починять :)

Забанят и будут правы. Присылайте патч с реализацией "distinct on" сначала. Я вот делал эмуляцию, да оно мне самому не нравится:
http://sqlite.mobigroup.ru/wiki?name=ext_auxfunc

P.S. Вот прям сейчас лень лезть смотреть доки, но сдается мне, в стандарте нет запрета наличия негруппированных полей в выборке.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Вывод сообщений по условию
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]