![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Witam mam bazę danych a w niej kilka tabel.
![]() Do każdego city_id jest przypisany nr. miejscowości np. pod city_id jest przypisana miejscowość Warszawa. Na stronie chciałbym wyświetlić właśnie tą nazwą a nie sam nr. Jak to zrobić? Jeszcze jedno jak zrobić aby nie powtarzała się ta sama nazwa city_id (nazwa miejscowości) Teraz to wygląda tak http://pogoda-zachodniopomorskie.pl/rekordy/index.php Z góry dziękuję za pomoc. Ten post edytował brzanek 1.07.2015, 05:25:16 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Zeby połączyc dane z kilku tabel, w tym wypadku chcesz dodac tabele z nazwami miast, nalezy uzyc LEFT JOIN - patrz manual mysql.
-------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Ale ja nie chcę pobierać danych z dwóch baz naraz tylko chcę zastąpić liczby w city_id nazwami przypisanymi do nich.
city_id o nr. 1 odpowiada nazwie - Warszawa city_id o nr. 36 to inaczej Szczecin itd Teraz jak zapisać to w php aby zamiast liczb były nazwy miast. Jak zrobić aby pobierane city_id z bazy danych nie powielały się? |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 70 Pomógł: 4 Dołączył: 16.03.2012 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 371 Pomógł: 30 Dołączył: 14.04.2010 Ostrzeżenie: (0%) ![]() ![]() |
Ale ja nie chcę pobierać danych z dwóch baz naraz tylko chcę zastąpić liczby w city_id nazwami przypisanymi do nich. city_id o nr. 1 odpowiada nazwie - Warszawa city_id o nr. 36 to inaczej Szczecin itd Teraz jak zapisać to w php aby zamiast liczb były nazwy miast. A masz w bazie danych w jakiejś tabeli że 1 to Warszawa, 36 to Szczecin? Jeśli tak to tak jak koledzy wyżej napisali musisz zrobić łączenie dwóch tabel. Jeśli nie to gdzie znajduje się to przypisanie miast do numerów? Jak zrobić aby pobierane city_id z bazy danych nie powielały się? http://www.w3schools.com/sql/sql_distinct.asp - to powinno pomóc. -------------------- Pomogłem - kliknij
![]() |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 1 319 Pomógł: 118 Dołączył: 26.11.2003 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Domyślam się, że chcesz zmodyfikować bazę na stałe, jeśli tak, to zmodyfikuj typ pola, gdzie masz city_id na tekstowe i najprościej - pętla w PHP, czyli pobierasz wszystkie dane (razem z LEFT JOIN, jak napisał nospor), a później robisz update dla każdego rekordu. Jak chcesz to zrobić zapytaniem to manual -> REPLACE
Ten post edytował Daimos 1.07.2015, 09:59:18 -------------------- scriptun.com. Startup z poradnikami do gier ttp.zone i ttpzone.pl
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dobra mam w drugiej tabeli nazwy miast przypisane do nr.
![]() Teraz jak to połączyć aby wyświetlić najwyższe temperatury a do nich przypisane były miejscowości ![]() Wcześniejsze wasze propozycje nic mi nie mówią aż tak dobrze to się nie znam na mysql. |
|
|
![]()
Post
#8
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Poraz kolejny - LEFT JOIN - pelen opis i przyklady masz w manualu mysql. Nawet osoba, ktora sie nie zna, nie jest zwolniona by do tego manuala łaskawie zajrzała...
https://dev.mysql.com/doc/refman/5.0/en/join.html cala masa przykladow jak łączyc tabele i wyswietlac dane z obu -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dodałem takie zapytanie
Ale wyskakuje błąd Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in /home/djdandi/ftp/2015/rekordy/index.php on line 13 Kod strony
|
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 30 Dołączył: 22.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Dobra zrobiłem
Ale teraz jak wyświetlić aby nie powtarzały się miasta. http://pogoda-zachodniopomorskie.pl/rekordy/index.php Ten post edytował brzanek 1.07.2015, 14:10:22 |
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 30 Dołączył: 22.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
pomiedzy select a from dodajes zpola jakie chcesz wyswietlic z danej tabelki, a zapytanie ponizej
odp2. Jak pogrupujesz a przy jednym miescie masz rozne tmp. to co wyswietlisz? Ten post edytował prz3kus 1.07.2015, 14:17:12 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Zależy mi na tym aby aby wyświetlić od najwyższej temperatury do najniższej z niepowtarzającymi się miejscowościami.
|
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 30 Dołączył: 22.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
No to tak:
Minimalne TMP
Maxymalne TMP
Średnie TMP
|
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 429 Pomógł: 0 Dołączył: 8.11.2012 Ostrzeżenie: (0%) ![]() ![]() |
Prawie jest tak jak chciałem ale zobacz http://pogoda-zachodniopomorskie.pl/rekordy/index.php trzy razy występuje miejscowiść Dębno.
A swoją drogą jak pozbyć się tych krzaczków? W bazie danych wszystko wyświetla się poprawnie. |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 260 Pomógł: 30 Dołączył: 22.01.2007 Ostrzeżenie: (0%) ![]() ![]() |
Moja wina wywal w grupowaniu tempertaure
Poprawione:
Co do polskich znaków czytaj tutaj: http://www.php.pl/Wortal/Artykuly/Pomysly-...e-znaki-a-MySQL Ten post edytował prz3kus 2.07.2015, 07:05:45 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 03:09 |