Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 13.11.2006 Skąd: Sosnowiec Ostrzeżenie: (0%)
|
W jaki sposób można sprawdzić czy w tabeli istnieją zdublowane wpisy, a następnie o ile istnieją usunąc je??
|
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 96 Pomógł: 7 Dołączył: 24.01.2006 Skąd: lublin/wawa Ostrzeżenie: (0%)
|
a moze zamiast sprawdzac czy istnieja zdublowane wpisy warto zrobic antyflood na metodzie post ?
sory ze to nie odpowiedz na twoje pytanie ale nie napisales czy te wpisy sa zdublowane, bo sa dodane przez przypadek(odswiezenie formularza) czy chodzi o czysta zlosliwosc uzytkownika |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 13.11.2006 Skąd: Sosnowiec Ostrzeżenie: (0%)
|
nie nie chodzi mi o system anty floodowy. załóżmy że te wpisy juz istnieją.
|
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 106 Pomógł: 1 Dołączył: 2.12.2005 Skąd: Jaworzno Ostrzeżenie: (0%)
|
jeśli w tabeli będziesz miał kolumnę z atrybutem UNIQUE, to nie wpisze Ci się dwa razy taki sam rekord (oczywiście pod warunkiem że ta kolumna nie będzie autoincrement) - oczywiście nie zawsze będziesz mógł dać taką kolumnę, ale może Ci się przyda
EDIT: natomiast co do usuwania, hmmm... myślę, że możesz zrobić selecta z group by:
powinieneś uzyskać tabelkę w postaci: wartość kolumny | ilość wystąpień wartości kasia | 7 basia | 5 itd po tym wiesz już, które wartości się powtarzają, więc robisz:
Zauważ, że jeśli wartości kasia było 7, to limit do 6 i pozostanie tylko 1 wpis z kasia (ten z najmniejszym, a więc najstarszym id) ps. selecty pisane z palca, więc na pewno mają błędy Ten post edytował Neojawor 16.03.2007, 13:56:12 |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 13.11.2006 Skąd: Sosnowiec Ostrzeżenie: (0%)
|
pierwszy select działa wyśmienicie !
zlicza bez problemu powtarzające się nazwy tylko dalej mam problemik z usuwaniem tego. A na jakiej zasadzie ustala się LIMIT bo tu widze że jest to wartośc powtarzających się wierszy minus 1 w tym wypadku 6.... smiga mi to jak jest DELETE FROM b WHERE nazwa LIKE 'kasia' a dalej nie za bardzo już mi idzie. Ten post edytował alogator 16.03.2007, 15:35:56 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 106 Pomógł: 1 Dołączył: 2.12.2005 Skąd: Jaworzno Ostrzeżenie: (0%)
|
jeżeli miałbyś z selecta 10 wyników, to LIMIT 6 sprawia, że zwróconych zostanie tylko 6 pierwszych, więc skoro mamy 7 wyników, to ograniczmy ich wybór do 6 - te 6 wywalamy a w bazie zostanie jeden. Może to nie działać, bo nie wiem jak LIMIT współpracuje z DELETE. Tu odsyłam do manuala
powodzenia |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 158 Pomógł: 0 Dołączył: 13.11.2006 Skąd: Sosnowiec Ostrzeżenie: (0%)
|
nooo wiele mi to ułatwiło!!
DZIEKUJE BARDZO ZA POMOC!! |
|
|
|
![]() ![]() |
|
Aktualny czas: 23.12.2025 - 18:27 |