Strona 1 z 1

sql jak sprawdzic, czy istnieja wiersze w jednej tabeli, ktore byly dodane później niż w drugiej tabeli (kolumna z datą insertu jest w obu)

: 27 cze 2015, 14:50
autor: tjekner
Pytanie jak w temacie, tylko dokładniej:
Mam dwie tabelki powiedzmy table1, table2 (tabela 2 zawiera id na wiersze z tabeli1). Obie mają kolumny inserted date (nazwa typ) i są ustawiane na aktualny czas lokalny YYYY-MM-DD HH:mm:SS w momencie insertu. Usiluje napisać zapytanie, które zwróci tak, nie, ilość (wszystko jedno) - odpowiedź na pytanie: czy istnieją wiersze w tabeli1, których maksymalna data insertu jest większa niż maksymalna data insertu w tabeli2

próbowałem coś w stylu:

Kod: Zaznacz cały

select count(*)
from table1 t1
join table2 t2
on t2.table1Id = t1.id
where max(t1.inserted) > max(t2.inserted)
próbowałem też coś z group by i having, ale nie wypaliło.

Bardzo proszę o pomoc.

-- 27 cze 2015, o 15:59 --

ok, mam:

Kod: Zaznacz cały

select max(table1.inserted) > max(table2.inserted) from Table1 table1, Table2 table2
nie wiedziałem, że można tak po prostu użyć operatora porównania w klauzuli select. Człowiek uczy się całe życie...