Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [mysql] usuwanie duplikatow
m1c
post 27.11.2008, 16:02:23
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 28.10.2008

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


Mam problem z stworzeniem zapytania usuwajacego duplikaty 'name' uwzgledniajace to co jest w 'type'.

Czyli jesli mam duplikat 'aaa', ktory wystepuje z type='1', type='2' i type='3' to chce usunac tylko ten z type='3', a reszte duplikatow pozostawic bez zmian.

Kod
+-----+-------+------+
| id  | name  | type |
+-----+-------+------+
| 01  | aaa   | 1    |
| 02  | ddd   | 2    |
| 03  | aaa   | 2    |
| 04  | bbb   | 2    |
| 05  | aaa   | 3    |
| 06  | eee   | 1    |
| 07  | aaa   | 2    |
| 08  | ccc   | 2    |
| 09  | aaa   | 2    |
| 10  | aaa   | 2    |
| 11  | ddd   | 2    |
| 12  | aaa   | 3    |
| 13  | aaa   | 2    |
| 14  | aaa   | 2    |
| 15  | fff   | 1    |
| 16  | aaa   | 2    |
| 17  | aaa   | 2    |
| 18  | xxx   | 2    |
| 19  | aaa   | 3    |
| 20  | ccc   | 2    |
+-----+-------+------+


Dzieki wielkie za pomoc!

Ten post edytował m1c 27.11.2008, 16:02:49
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 1)
Fixer
post 30.11.2008, 11:44:40
Post #2





Grupa: Zarejestrowani
Postów: 123
Pomógł: 0
Dołączył: 24.10.2004
Skąd: TG

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


Pokombinuj z tym:

1. tworzymy kopię samego schematu naszej tabeli i nazywamy ją moja_tabela2:)
  1. CREATE TABLE IF NOT EXISTS `baza_danych`.`moja_tabela2` LIKE `baza_danych`.`moja_tabela`;");


2. wstawiamy unikatowe rekordy do nowej tabeli i automatycznie numerujemy dodawane wpisy (możesz też to posortować wg kolumny name jak chcesz, użyj do tego ORDER BY ... )
  1. SET @i=0;
  2. INSERT INTO (SELECT DISTINCT @i:=@i+1 AS id_wpisu, moja_tabela.name, moja_tabela.type FROM baza_danych.moja_tabela);


Ten post edytował Fixer 30.11.2008, 11:46:35


--------------------
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 24.07.2025 - 16:28