![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 131 Pomógł: 0 Dołączył: 9.02.2009 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam tabelę ODDANIA, w niej jest ok 40 pól, przy tym co chcę zrobić interesuje mnie tylko 6. Baza nie jest moja, ja jedynie z niej korzystam dla usprawnienia pracy. Poniżej jest kod, który działa przy takich założeniach jak są zrobione.
Myślałem ze unikatowym polem jest ODDWNR, więc przy takim założeniu wszystko działa prawidłowo i otrzymywałem ok 16 tys. wyników. Jednak okazało się że połączenie unikatowe to połączenie ODPLNR, ODDWNR. To stanowi dopiero unikalny numer czyli np. ODPLNR=1234 ODDWNR=98765 czyli całością powinno być 123498765 i powinienem uzyskać ponad 20 tys. wyników Próbowałem zrobić to tak
Przy takim zapisie w wynikach otrzymuję: Atrybut h: 1 Atrybut r: 0 Atrybut p: 0 Atrybut a: 0 Atrybut b: 0 co oczywiście nie jest oprawdą. Dalej próbowałem tak:
I przy takich próbach zawsze było w wynikach Atrybut h: 1 Atrybut r: 0 Atrybut p: 0 Atrybut a: 0 Atrybut b: 0 Gdzie może tkwić problem? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
Pierwsza wersja Twojego kodu z CONCAT(ODPLNR, ODDWNR) as numer wydaje się być jak najbardziej poprawna.
Czekaj, już wiem gdzie jest błąd. Jeśli kolumny, który łączysz, są INTem, to musisz wpierw zrzutorwać je na tekst. Przykład masz podany w manualu: Kod CONCAT(CAST(int_col AS CHAR), char_col) (IMG:style_emoticons/default/smile.gif) A na przyszłośc sprawdzaj jakie dane dostajesz, to od razu by było widać w czym problem... print_r($set); i wszystko jest jak na dłoni. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 7.10.2025 - 16:26 |