Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: distinct(miasto)
Forum PHP.pl > Forum > Bazy danych > MySQL
alex2
Witam.
Chciałbym policzyć ile razy w bazie danych znajduje się dane miasto
ale niektórzy zapominają o polskich znakach i o wielkości liter

a to jest jedno i to samo miasto.


dobrze by bylo aby to juz baza danych kojarzyła te miejscowości.
ale jeśli zajdzie taka potrzeba może to przetwarzać php

zastanawialem sie nad funkcją http://pl2.php.net/manual/pl/function.soundex.php" title="Zobacz w manualu PHP" target="_manual

ale nie wiem jak sie za to zabrac

za pomoc z gory dziekuje
Puciek
Musialbys robic kombinacje i sprawdzac, np. skryp najpierw sprawdzy "Łódź" potem zamiast ó podstawi o i sprawdzi "Łodź" itd. itp...
orson
witam ...

miasto jest w tekscie czy w osobnej kolumnie questionmark.gif [np w danych usera jako jego miasto] jezeli jest w kolumnie to przy count mozesz zmniejszac do malych liter i wywalac polskie znaki ... wtedy beda takie same ... albo zrobic selecta na stronie i nie pozwolic na wpisywanie tylko na wybieranie

pozdrawiam
alex2
kolumna z miastami to varchar(50)
i nie sa to miasta userów.

to powiedzmy ze jest ksiega gosci w której odwiedzający wpisują miejscowość.
tak więc w tej kolumnie można się spodziewać wszelkiego rodzaju odmian miejscowości. rozumiem ze ze skrótami sobie nie poradze (Wawa - Warszawa, itp)
no ale przynajmniej chcial bym przynajmniej te co moge powiązać.

tak więc select odpada sad.gif

natomiast kolega który podpowiedział aby zamieniać polskie znaki na
ich odpowiedniki ó - o ł-l
to w sumie rozwiązuje problem choc myslałem ze da sie to zrobic w bazie danych (tzn. przez odpowiednie zapytanie)
(heh tylko nie wiem jak zamienic polskie znaki na odpowiedniki tongue.gif)
Puciek
Jezeli mowiles o mnie, to musisz to zrobic w kombinacjach, niewiadomo o czym zapomna ^^
popbart
  1. SELECT lower(
  2. trim(
  3. REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE(REPLACE
  4. (nazwa,'ń','n'),'ć','c'),'ź','z'),'ż','z'),'ł','l'),'ś','s'),'ą','a'),'ę','e'),'ó','o'))) AS nazwa,count(id) AS ile
  5. FROM tabela GROUP BY nazwa
Strzyzyk_MC
A wielkosciami liter i tak nie musisz sie przejmowac bo jesli nie dales BINARY to nie powinno byc problemow...
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.