Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> zdublowane rekordy, Czy są dwa takie same rekordy
Chrom
post
Post #1





Grupa: Zarejestrowani
Postów: 240
Pomógł: 17
Dołączył: 28.12.2005
Skąd: Warszawa

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


Witam,
potrzebuję sprawdzić czy w odpowiedniej kolumnie bazy danych nie znajdują się dwa takie same rekordy czy jest jakaś funkcja która może to sprawdzić a może ktoś dysponuje skryptem?
Podrawiam
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
mysz
post
Post #2





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 26.08.2006
Skąd: Szczecin

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


Cytat(Chrom @ 22.02.2007, 19:54:10 ) *
potrzebuję sprawdzić czy w odpowiedniej kolumnie bazy danych nie znajdują się dwa takie same rekordy czy jest jakaś funkcja która może to sprawdzić a może ktoś dysponuje skryptem?


Pobierz ilość rekordów spełniających Twój warunek.
Go to the top of the page
+Quote Post
frickle
post
Post #3





Grupa: Zarejestrowani
Postów: 69
Pomógł: 0
Dołączył: 20.04.2006
Skąd: Kraków/Lublin/Lubartów

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


Ha. Tyle że wygląda na to że chłopina nie zna warunku tylko chce sprawdzić. No cóż. nie przychodzi w tej sytuacji jedno tylko rozwiązanie. Pobrać wszystkie rekordy, a potem w pętli sprawdzać dla pierwszego: od drugiego do końca, dla drugiego, od trzeciego do końca czy są identyczne i tak aż dojdziesz do przedostatniego dla którego sprawdzisz identyczność z ostatnim.

tak na biegu to mi coś takiego wychodzi:
  1. <?php
  2. $query = 'select * from tabela'
  3. $wynik = mysql_query($qury,$baza);
  4. $ile = mysql_num_rows($wynik);
  5. for($i=1;$i<=$ile;$i++)
  6.  {
  7. $rekord = mysql_fetch_asoc($wynik);
  8. $query2 = 'select id from tabela where id='.$rekord['id'].' and ..(powtarzasz dla każdego pola ten warunek.. limit '.$i+1.','.$ile-$i;
  9. $wynik2 = mysql_query($query2,$baza);
  10. $ile2 = mysql_num_rows($wynik);
  11. ... tutaj jeżeli $ile2 > 0 to coś z tym robisz, zapisujesz w tabeli id rekordu który się powtarza albo co
  12. }
  13. ?>


Ten post edytował frickle 22.02.2007, 21:32:34
Go to the top of the page
+Quote Post
Chrom
post
Post #4





Grupa: Zarejestrowani
Postów: 240
Pomógł: 17
Dołączył: 28.12.2005
Skąd: Warszawa

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


Dzięki zaraz sprawdzę
Jest ok małe literówki i niewielka modyfikacja
dzieki za pomoc

Ten post edytował Chrom 22.02.2007, 21:39:59
Go to the top of the page
+Quote Post
kwiateusz
post
Post #5


Admin Techniczny


Grupa: Administratorzy
Postów: 2 071
Pomógł: 93
Dołączył: 5.07.2005
Skąd: Olsztyn




zadałem raz takie samo pytanie może Ci ono pomoże (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

http://forum.php.pl/index.php?showtopic=49939
Go to the top of the page
+Quote Post
Chrom
post
Post #6





Grupa: Zarejestrowani
Postów: 240
Pomógł: 17
Dołączył: 28.12.2005
Skąd: Warszawa

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


Super dzieki za zainteresowanie
Go to the top of the page
+Quote Post
bendi
post
Post #7





Grupa: Zarejestrowani
Postów: 401
Pomógł: 5
Dołączył: 14.09.2003
Skąd: Wrocław

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


  1. SELECT nazwa_kolumny FROM nazwa_tabeli GROUP BY nazwa_kolumny HAVING count(nazwa_kolumny)>1
Go to the top of the page
+Quote Post
prond
post
Post #8





Grupa: Zarejestrowani
Postów: 254
Pomógł: 10
Dołączył: 8.11.2006
Skąd: Warszawa

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


  1. SELECT
  2. count(*) - count(DISTINCT column_name)
  3. FROM my_table;


albo

  1. SELECT
  2. CASE
  3. WHEN count(*) - count(DISTINCT column_name) = 0 THEN false
  4. ELSE true END AS has_duplicates
  5. FROM my_table;
Go to the top of the page
+Quote Post

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: 23.08.2025 - 19:06