SQL Оператор работает медленно - PullRequest
0 голосов
/ 09 января 2020

У меня проблемы с загрузкой данных из таблицы журнала. Я пытаюсь отфильтровать таблицу по столбцу, в котором есть строка. Ниже приводится заявление, которое я использую. Я могу получить данные за 4 недели до этого, но когда я пытаюсь получить больше исторических данных, время ожидания истекает. Я продлил время до 600 секунд, но все же ошибаюсь. Итак, я предполагаю, что есть лучший способ написать мое заявление?

Кроме того, если возможно, я бы хотел иметь самую последнюю временную метку, основанную на значении

Заранее благодарю. Джо

select 
dl.user_id, 
dl.timestamp,
dl.value,
dl.operation,
concat(concat(un.first_name, ' '), un.last_name) AS "User" ,
from data_log dl 
where  dl.timestamp >= date '2019-12-01' and dl.operation = 'update' and dl.values like 
'%"date_time"%'

1 Ответ

1 голос
/ 09 января 2020

Для этого запроса:

select dl.user_id, dl.timestamp, dl.value, dl.operation,
       concat(concat(un.first_name, ' '),
       un.last_name) AS "User"
from data_log dl 
where dl.timestamp >= date '2019-12-01' and
      dl.operation = 'update' and
      dl.values like '%"date_time"%';

Требуется индекс для data_log(operation, timestamp, values). Это может помочь решить проблему производительности.

...