У меня есть запрос, который я хочу, чтобы упростить:MySQL - Как упростить этот запрос?
select
sequence,
1 added
from scoredtable
where score_timestamp=1292239056000
and sequence
not in (select sequence from scoredtable where score_timestamp=1292238452000)
union
select
sequence,
0 added
from scoredtable
where score_timestamp=1292238452000
and sequence
not in (select sequence from scoredtable where score_timestamp=1292239056000);
Любые идеи? в основном я хочу извлечь из той же таблицы все последовательности, которые различаются между двумя значениями метки времени. С «добавленным» коллом, который представляет, если строка является новой или если строка была удалена.
Источник таблицы:
score_timestamp sequence
1292239056000 0
1292239056000 1
1292239056000 2
1292238452000 1
1292238452000 2
1292238452000 3
Пример между (1292239056000, 1292238452000) результат запроса (2 строки):
sequence added
3 1
0 0
Пример между (1292238452000, 1292239056000) Результат запроса (2 строки) :
sequence added
0 1
3 0
Пример: (129 2239056000, 1292239056000) Результат запроса (0 строк):
sequence added
+1 peter, я пропустил/испортил мое понимание этого :) –
отлично! большое спасибо! –
Упс! это не тот же запрос! Я добавил несколько примеров, которые не удовлетворяются этим запросом :(Например, при сравнении с той же меткой времени или при сравнении в порядке реверса (я хочу сравнить выше с более низкими отметками времени) .... –