Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Сортировка в подзапросе триггера / 7 сообщений из 7, страница 1 из 1
05.08.2010, 19:30
    #36778169
SergVX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
Есть две таблицы:
table1 (id1, fio, ...),
table2 (id2, cmp, ...),
соединенные по принципу "многие-ко-многим" с помощью table3(id11,id22).

Рабочий триггер:
CREATE TRIGGER table1_au AFTER UPDATE OF fio ON "table1" FOR EACH ROW
BEGIN
UPDATE table2 SET cmp = ((SELECT COALESCE((SELECT fio FROM table1
WHERE id1 = (SELECT id11 FROM table3
WHERE id22 = new.id2, LIMIT 1)), '')) ||
(SELECT COALESCE((SELECT ', ' || fio FROM table1
WHERE id1 = (SELECT id11 FROM table3
WHERE id22 = new.id2 LIMIT 1 OFFSET 1)), '')) ||
(SELECT COALESCE((SELECT ' и др.' FROM table1
WHERE id1 = (SELECT id11 FROM table13
WHERE id22 = new.id2 LIMIT 1 OFFSET 2)), '')))
WHERE id2 = new.id2;
END;

Вопрос: возможно ли отсортировать в триггере объединяемые fio для получения результата "АААА, ББББ и др."?
...
Рейтинг: 0 / 0
05.08.2010, 20:52
    #36778258
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
Добавь ORDER BY в дополнение к свои LIMIT&OFFSET и будет тебе щастье.
А вообще глупостями занимаетесь. 100% уверен что настоящую задачу можно решить проще вынеся всю эту чушь на клиента.
...
Рейтинг: 0 / 0
05.08.2010, 21:18
    #36778290
SergVX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
White Owl,

Польщен Вашей вежливостью, но Ваше предложение вообще не решает задачу. Читайте внимательнее код.
...
Рейтинг: 0 / 0
05.08.2010, 23:02
    #36778372
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
Решает прекрасно.
Не обязательно сортировать по видимым полям.
Если надо сортировать по полю которое находится в другой таблице, достаточно эту таблицу подключить.
...
Рейтинг: 0 / 0
05.08.2010, 23:48
    #36778430
SergVX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
White Owl,

Не подскажите, как в данном случае конретно должен выглядеть кусок кода для сортировки по другой таблице?
...
Рейтинг: 0 / 0
06.08.2010, 00:11
    #36778455
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
Код: plaintext
1.
2.
3.
4.
5.
select t1.id
from t1 
join t2 on t1.pk=t2.pk
order by t2.somefield
limit  1 
offset  1 
...
Рейтинг: 0 / 0
06.08.2010, 00:22
    #36778465
SergVX
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сортировка в подзапросе триггера
White Owl,

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


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