Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zliczanie przy powtarzajacych sie rekordach
axxxon
post
Post #1





Grupa: Zarejestrowani
Postów: 47
Pomógł: 1
Dołączył: 28.10.2010

Ostrzeżenie: (0%)
-----


Witam!

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:
  1. SELECT DISTINCT `p-p` , `nazwa` , (
  2.  
  3. SELECT count( `id` )
  4. FROM `main` m2
  5. WHERE `m2`.`nazwa` = `m1`.`nazwa`
  6. )
  7. FROM `main` m1
  8. WHERE `status` =1;


Czy istnieje możliwość aby te pola zliczyć dodając np:
  1. (SELECT count(id) FROM main_h m3
  2. 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 (IMG:style_emoticons/default/questionmark.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
wookieb
post
Post #2





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




  1. SELECT count(DISTINCT p1, p2, p3, p4) FROM tabela_historyczna

p1, p2, p3, p4 nazwy kolejnych pol w twojej tabeli historycznej
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 16:05