Autor Zpráva
Dotaznik
Profil *
Rád bych radu jak mám z jedné tabulky vymazat duplicitní záznamy? řekněme že mám tabuku

id text jmeno

1 bla Honza
2 kkk Milan
3 kkk Milan
4 hhh Marek

kromě id je tedy
2 kkk Milan
3 kkk Milan
duplicitní, potřebuju poradit jak udělat aby se mi všechny takovéto duplicitní záznamy smazaly z tabulky a zůstala tam jen jedna jejich kopie

takže po vyčištění:

1 bla Honza
2 kkk Milan
4 hhh Marek

tabulka je příliš velká na to než aby se to dělalo ručně po jednom, věděl by někdo prosím jak na to?

díky
Alphard
Profil
http://www.linuxsoft.cz/article.php?id_article=816
Dotaznik
Profil *
supr to je ono
Dotaznik
Profil *
Tak ještě jedna věc, když chci vybrat z tabulky unikátní záznamy použiju
$dotaz = mysql_query("select Distinct(slovo) from test");

tohle funguje bez problémů ale problém je když chci vybrat víc polí, když použiju

$dotaz = mysql_query("select Distinct(slovo),id from test");

tak se to sice vypíše ale je to jako by ta vůbec nebylo to Distinct() normálně to vypisuje i duplicitní políčka.. jak na to?
Kajman_
Profil *
jak mám z jedné tabulky vymazat duplicitní záznamy?
DELETE FROM tabulka t1 USING tabulka t1, tabulka t2 WHERE t1.jmeno=t2.jmeno AND t1.text=t2.text AND t1.id<t2.id

když chci vybrat víc polí
tak distinct kontroluje víc polí. Asi použijte group by, pokud chcete dávat data dokupy podle stejného sloupečku
MzM
Profil
distinct je jakýsi modifikátor toho select a týká se všech sloupečků, které jsou v seznamu.
tedy pokud jsou různá id, což lze předpokládat, tak se vypíší všechny řádky s různými ID.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0