Chciałbym zapytać się czy istnieje jakiś prosty sposób na wykonanie takiej oto sytuacji:
Mam 2 tabele - druga z nich to tabela historyczna w której zapisywane są wszelkie zmiany które zaszły w tej pierwszej(głównej), tj. rekordy mogą się powtarzać w sytuacji gdy raz wprowadzona zmiana została
później cofnięta.
Teraz moim problemem jest zliczenie wszystkich tych zapisanych rekordów dla danego elementu jednak bez powtórzeń.
Powiedzmy w tabeli głównej mamy pola
id, nazwa, p-p,data
w tabeli historycznej pola:
id-in,id,nazwa,p-p,data,data-in
moje zapytanie jest podobne do:
SELECT DISTINCT `p-p` , `nazwa` , ( SELECT count( `id` ) FROM `main` m2 WHERE `m2`.`nazwa` = `m1`.`nazwa` ) FROM `main` m1 WHERE `status` =1;
Czy istnieje możliwość aby te pola zliczyć dodając np:
(SELECT count(id) FROM main_h m3 WHERE m3.p-p = m1.p-p tu jakies polecenie)
nie robiąc warunków sprawdzających czy danych wiersz sie nie powtarza czy jedynym wyjściem jest sprawdzać każde pole za pomocą where pole1=cos and pole2=cos itd
