Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wyciągnięcie zduplikowanych wpisów bez id
Forum PHP.pl > Forum > Bazy danych > MySQL
MitS
witam wszystkich,

mam duży problem. Otóż posiadam tabelę tmp która ma dwa pola: cat i attr - w obydwu są przechowywane liczby.
Moje pytanie brzmi jak wyciągnąć zapytaniem (lub kilkoma) powtarzające się wpisy np.:

cat attr
1 2
1 3
1 6
2 1
2 3
1 2
3 2

to z takich danych chciałbym by zapytanie wyciągneło 1 wpis: cat - 1 attr - 2 bo tylko on się powtarza.
Ma ktoś pomysł ?
qrcze_pieczone
Myślę że to powinno pomóc
  1. SELECT columna,cyfra,ile_razy FROM
  2. (
  3. SELECT 'cat' AS columna, cat AS cyfra,COUNT(cat)AS ile_razy
  4. FROM test2
  5. GROUP BY cat
  6. HAVING COUNT(cat)>1
  7. UNION ALL
  8. SELECT 'attr' AS columna, attr AS cyfra,COUNT(attr) AS ile_razy
  9. FROM test2
  10. GROUP BY attr
  11. HAVING COUNT(attr)>1
  12. )t

oczywiście możesz oddzielnie to zrobić bez UNION
MitS
hmm wygląda ciekawie, nie mniej jednak dostaje taki bład: ERROR 1248 (42000): Every derived table must have its own alias
qrcze_pieczone
Hm...
Wygląda na to że chyba wszystkiego nie skopiowałeś
To "t" na końcu to alias, też musi być w zapytaniu
MitS
zdecydowanie wszystko, tylko zauwazylem ze na koću masz literkę "t" i się zastanawiam czy nie miało być tam coś jeszcze ?
qrcze_pieczone
zamiast tego "t" wpisz cokolwiek to jest alias i nic więcej
ja ten kod testowałem pod phpMyAdmin oraz Toad for MySQL , wersja MySQL 5.1
MitS
chyba się pośpieszylem.

Nie do konca tak dziala jak trzeba smile.gif
Otóż w chwili obecnej wyswietla ile cyfr w ogole pojawilo się a mi zalezalo na tym by policzyc pary.
Czyli cat AND attr jednoczesnie.
qrcze_pieczone
Nie za bardzo wiem po co ci to w takiej formie
Nie mam pomysłu jak to złączyć w MySQL ale można to zrobić w php-ie
Wywołaj oddzielnie oba selekty zapisz do oddzielnej tablicy i te dwie tablice złącz
w taki sposób jak ci to odpowiada
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.