![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 11.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
Witam wszystkich
Mam problem z dodaniem do poniższego kodu funkcji count. Zasada działa kodu jest taka że do konkretnej lokalizacji przypisany jest numer telefonu. Numery są przechowywane w innej tabeli, natomiast na stronie docelowej obok lokalizacji wyświetlany jest numer telefonu. Zdarza się że do jednej lokalizacji przypisanych jest kilka numerów. W jaki sposób policzyć ilość wystąpień danej lokalizacji?
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 4 Dołączył: 11.08.2010 Skąd: Inowrocław Ostrzeżenie: (10%) ![]() ![]() |
Witam wszystkich Mam problem z dodaniem do poniższego kodu funkcji count. Zasada działa kodu jest taka że do konkretnej lokalizacji przypisany jest numer telefonu. Numery są przechowywane w innej tabeli, natomiast na stronie docelowej obok lokalizacji wyświetlany jest numer telefonu. Zdarza się że do jednej lokalizacji przypisanych jest kilka numerów. W jaki sposób policzyć ilość wystąpień danej lokalizacji?
Nie jasna jest trochę ta tabela. Co to object, object phone ? Phonebook to tablica z samymi numerami czy też z danymi adresowymi? Tabela dane co zawiera? Uprość sobie nazywnictwo bo tak sam sobie kłody podkładasz... ![]() |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 11.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
Tabela phonebook
Tabela dane
W tabeli phonebook do każdego obiektu przypisuje numer telefonu, następnie wprowadzam numery telefonów to tabeli dane i robię porównanie chcąc uzyskać informacje do jakiego obiektu przypisany jest numer telefonu. Są oczywiście powtórzenia obiektów poniważ do jednego obiektu przypisanych jest kilka numerów. Potrzebuję uzyskać informację ile razy każdy z obiektów się powtarza. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 107 Pomógł: 4 Dołączył: 11.08.2010 Skąd: Inowrocław Ostrzeżenie: (10%) ![]() ![]() |
No to teraz pomogę
![]() Połaczenie tych tabel jest mało wydajne. Lepiej robić to po indeksach głównych (ID)
Sprawdź jeszcze czy ten left join tam pasuje ![]() ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 11.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) ![]() ![]() |
Czy, aby przypadkiem nie masz gdzieś jeszcze tabeli, która przechowuje obiekty?
Czy telefon może być przypisany tylko do jednego obiektu, czy do wielu? Korzystasz z jakiegoś gotowego mechanizmu, czy sam wszystko napisałeś i możesz bezproblemowo zmienić strukturę bazy? -------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 11.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
W tabeli phonebook przechowuję dane o obiektach i numerach telefonów do nich przypisanych
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) ![]() ![]() |
W takim wypadku powinieneś przenieść relacje z tabeli phonebook do dane. W tedy z tabeli phonebook wylatuje kolumna object_phone, a w tabeli dane dodajesz kolumne object_id. Zakładam, że konkretny numer telefonu może być przypisany tylko do jednego obiektu. W tedy unikniesz nadmiarowości danych w tabeli phonebook.
Co do samego liczenia to możesz wykorzystać polecenie COUNT(*) na tabeli phonebook, oczywiście już po poprawie struktury oraz usunięciu zbędnych danych. Jeśli chcesz sprawdzić w pętli podanej w pierwszym poście możesz utworzyć sobie pustą tablice, do której będziesz wrzucał obiekty. Jeśli będzie się on już znajdował w tablicy, w tedy logicznie nie dodajesz. Później przy pomocy funkcji count sprawdzasz ilość obiektów. -------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 11.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
W tabeli phonebook mam dane w postaci:
| object | phone_number | |----------------------------- | Poznań | 1234567 | | Wrocław| 2132435 | | Poznań | 7654321 | Do jednego obiektu będzie przypisane po kilka numerów |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 467 Pomógł: 77 Dołączył: 6.09.2008 Skąd: Miechów / Kraków Ostrzeżenie: (0%) ![]() ![]() |
Zrób coś takiego:
Kod Tabela phonebook: |id|object| | 1| name1| | 2| name2| | 3| name3| Tabela data |id|object_id|phone| | 1| 1|12345| | 2| 1|12356| | 3| 2|45678| | 4| 3|98756| | 5| 3|45623| -------------------- Niemożliwym jest stworzenie czegokolwiek idiotoodpornego, ponieważ idioci są wyjątkowo pomysłowi.
https://www.aroch.pl https://themeforest.net/user/aroch https://www.astroblog.aroch.pl https://www.4geeks.pl |
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 49 Pomógł: 0 Dołączył: 11.12.2008 Ostrzeżenie: (0%) ![]() ![]() |
Jeżeli tak zrobie jak to opisałeś to będę musiał stworzyć jeszcze jedną tabelę z samymi numerami telefonów. Ogólnie zasada skryptu ma polegać na tym że do zdefiniowanych wcześniej numerów tel do obiektów będę porównywać listę z samymi numerami i w razie dopasowania przy numerze pojawi mi się nazwa obiektu
Zmodyfikowałem strukturę bazy danych i udało mi się uzyskać pożądany efekt. Chciałem aby wyniki były zobrazowane wykresem, wybrałem biblioteki LabCharts, ale mam problemy z generowaniem wykresów.
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 21.08.2025 - 11:43 |