Size: a a a

2020 November 04

DE

Denis Efremov in MySQL
источник

V

Victor in MySQL
какой параметр отвечает за async/sync репликацию?
источник

A

Alex Darkside in MySQL
Всем доброго времени суток. У меня появился один вопросик, на который не смог найти ответ.
Можно ли узнать с помощью триггеров , какой пользователь выполняет запрос ?
источник

Б

Богдан in MySQL
Господа, а не подскажите юзаю оконную функцию, когда добавляю туда сортировку то она выполняется 16 секунд, без сортировки 200 мс
JSON_ARRAYAGG(JSON_OBJECT('image', pi.image)) OVER (ORDER BY pi.sort_order)
источник

Б

Богдан in MySQL
индекс по sort_order есть
источник

A

Alex Darkside in MySQL
Alex Darkside
Всем доброго времени суток. У меня появился один вопросик, на который не смог найти ответ.
Можно ли узнать с помощью триггеров , какой пользователь выполняет запрос ?
Все нашел ответ )) select user()
источник

A

Alex Darkside in MySQL
Alex Darkside
Все нашел ответ )) select user()
Но правильно ли это ?
Мне нужно просто логировать все данные которые добавляются или же обновляются
источник

IZ

Ilia Zviagin in MySQL
Alex Darkside
Всем доброго времени суток. У меня появился один вопросик, на который не смог найти ответ.
Можно ли узнать с помощью триггеров , какой пользователь выполняет запрос ?
Нет, триггера к этой задаче никак не относятся
источник

IZ

Ilia Zviagin in MySQL
Богдан
Господа, а не подскажите юзаю оконную функцию, когда добавляю туда сортировку то она выполняется 16 секунд, без сортировки 200 мс
JSON_ARRAYAGG(JSON_OBJECT('image', pi.image)) OVER (ORDER BY pi.sort_order)
Ну так это ты получаешь разные запросы, один так выполняется, другой подругому.
источник

Б

Богдан in MySQL
Ilia Zviagin
Ну так это ты получаешь разные запросы, один так выполняется, другой подругому.
ну так без сортировки в оконной функции выполняется за 100мс а с сортировкой более 20 сек
источник

IZ

Ilia Zviagin in MySQL
Alex Darkside
Но правильно ли это ?
Мне нужно просто логировать все данные которые добавляются или же обновляются
Логировать - да, можно триггерами.
источник

IZ

Ilia Zviagin in MySQL
Богдан
ну так без сортировки в оконной функции выполняется за 100мс а с сортировкой более 20 сек
Это нормально, ничего криминального тут нет
источник

Б

Богдан in MySQL
Ilia Zviagin
Это нормально, ничего криминального тут нет
это ненормально, массив 5000 записей и 20 секунд
источник

IZ

Ilia Zviagin in MySQL
Богдан
Господа, а не подскажите юзаю оконную функцию, когда добавляю туда сортировку то она выполняется 16 секунд, без сортировки 200 мс
JSON_ARRAYAGG(JSON_OBJECT('image', pi.image)) OVER (ORDER BY pi.sort_order)
Интересно, на кой фиг тебе сортировка нужна, если ты агрегат вычисляешь...
источник

Б

Богдан in MySQL
Ilia Zviagin
Интересно, на кой фиг тебе сортировка нужна, если ты агрегат вычисляешь...
в агрегат я закидываю массив который нужно отсортировать
источник

IZ

Ilia Zviagin in MySQL
Богдан
в агрегат я закидываю массив который нужно отсортировать
И зачем же?
источник

Б

Богдан in MySQL
ну я же потом этот массив на бекенде использую, что бы не сортировать в бекенде, сразу сортирую в БД
источник

Б

Богдан in MySQL
просто в том же постгресе на таких крошечных массивах как 5000 записей я вообще не видел замедления на окнах
источник

A

Alex Darkside in MySQL
Ilia Zviagin
Логировать - да, можно триггерами.
Хорошо, ещё один вопрос , что означает /* 50017 Definer ='root'@'localhot' */ в трегеррах ?
Это типо триггер работает только когда выполняет запрос пользователь root что-ли ?
источник

Б

Богдан in MySQL
как бы через подзапрос все летает
WITH
 tmpProduct AS (
select p.product_id as id, p.image,
IF(count(t.image), JSON_ARRAYAGG(JSON_OBJECT('image', t.image)), JSON_ARRAY()) AS images
from oc_product p
 LEFT JOIN LATERAL (
  select image FROM oc_product_image pi
  WHERE pi.product_id = p.product_id AND p.image != pi.image
  ORDER BY pi.sort_order
 ) t ON true
where p.status = 1
group by p.product_id
)
select id, IF(image, JSON_ARRAY_APPEND(images, '$', image), images)  as images
from tmpProduct
источник