Size: a a a

2021 August 18

IZ

Ilia Zviagin in MySQL
Дампа нет...
источник

ДС

Дмитрий Сайтотворец... in MySQL
ясно
источник
2021 August 19

РW

Роман Webds in MySQL
Коллеги, помогите оптимизировать запрос.
http://joxi.ru/xAeb9jacbPBMZr

Сам запрос https://pastebin.com/Rxapy5wQ

Оч медленно отрабатывает.
источник

G

Grigorij in MySQL
explain запроса покажи
источник

G

Grigorij in MySQL
А в чём глубокий смысл функции MIN(IF( df.DEAL_FIELD_ID = 359793, df.DEAL_FIELD_VALUE, NULL)) as 'Продукт' ? Учитывая, что там внутри DEAL_FIELD_VALUE - строка
источник

РW

Роман Webds in MySQL
так я вот тоже не могу понять зачем.. вот решил и написать в чат.
это только часть запроса, передан формат его, там много полей и есть поля которые числовые.
но смысла я тоже не уловил от MIN  да и в принципе не уловил даже при числовом поле зачем он нужен.
MIN же по сути ищем самое маленькое значение...  но с df.DEAL_FIELD_ID = 359793 - значение всегда будет одно.
Это эронду такую увидел в PowerBI
источник

G

Grigorij in MySQL
Ну, он будет искать минимальный DEAL_FIELD_VALUE, а не DEAL_FIELD_ID, который константа в этом случае
источник

G

Grigorij in MySQL
Возможно автор просто применил агрегирующую функцию на всякий случай :D
источник

РW

Роман Webds in MySQL
но он не может его искать
источник

G

Grigorij in MySQL
Кто ему запретит?
источник

РW

Роман Webds in MySQL
ну там просто строка только одна может быть.  Имею введу что бесмысленно..ну или я чет не допонял
источник

РW

Роман Webds in MySQL
-- Дамп структуры для таблица xxxx.DealsFields
CREATE TABLE IF NOT EXISTS DealsFields (
 ROW_ID int(11) NOT NULL AUTO_INCREMENT,
 DEAL_ID int(11) DEFAULT NULL,
 DEAL_FIELD_ID int(11) DEFAULT NULL,
 DEAL_FIELD_NAME varchar(250) CHARACTER SET utf8 DEFAULT NULL,
 DEAL_FIELD_VALUE mediumtext CHARACTER SET utf8,
 CREATED_AT timestamp NULL DEFAULT NULL,
 UPDATED_AT timestamp NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP,
 PRIMARY KEY (ROW_ID),
 UNIQUE KEY DEAL_ID_DEAL_FIELD_ID (DEAL_ID,DEAL_FIELD_ID),
 KEY DealsFields_DEAL_ID_index (DEAL_ID),
 KEY DealsFields_DEAL_FIELD_ID_index (DEAL_FIELD_ID),
 KEY CREATED_AT (CREATED_AT)
) ENGINE=InnoDB AUTO_INCREMENT=52698511 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
источник

G

Grigorij in MySQL
При одинаковом DEAL_FIELD_ID  может быть разный DEAL_FIELD_VALUE, это же разные поля
источник

РW

Роман Webds in MySQL
не может быть две строки в то то идело ))
источник

G

Grigorij in MySQL
Реверс инжинеринг старых sql запросов иногда бывает проблемой
источник

РW

Роман Webds in MySQL
UNIQUE KEY DEAL_ID_DEAL_FIELD_ID (DEAL_ID,DEAL_FIELD_ID),
источник

G

Grigorij in MySQL
Там одна строка, поля разные
источник

РW

Роман Webds in MySQL
вот этого не понял, обьясни плиз
источник

G

Grigorij in MySQL
Представь строку на два столбца
источник

G

Grigorij in MySQL
(DEAL_ID,DEAL_FIELD_ID)
источник