Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Jak rozbić dane z pola rozdzielone przecinkiem
wlodek
post
Post #1





Grupa: Zarejestrowani
Postów: 27
Pomógł: 0
Dołączył: 3.10.2009
Skąd: Łódź

Ostrzeżenie: (0%)
-----


Witam,

Mam problem z zapytaniem, w którego sklad wchodzą 2 tabele.

tabela 1

----------------------------------
| idT1 | pT1 |
----------------------------------
| 1 | 1,2,5 |
| 2 | 2,5,7 |
| 3 | 1,3,5 |
-----------------------------------

tabela 2

----------------------------------
| idT2 | pT2 |
----------------------------------
| 1 | jabłka |
| 2 | gruszki |
| 3 | śliwki |
| 4 | wiśnie |
| 5 | maliny |
.................
| 7 | morele |
-----------------------------------

i chcę otrzymać takie dane
----------------------------------
| idT1 | pT2 |
----------------------------------
| 1 | jabłka |
| 1 | gruszki |
| 1 | maliny |
-----------------------------------

Stosowałem SELECT * FROM T1, T2 where idT2 in (pT1) i .... lipa.

co robie źle?

Jak ten problem rozwiązać. Dzięki za pomoc.

Ten post edytował wlodek 4.10.2009, 20:46:52
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
someone.cool
post
Post #2





Grupa: Zarejestrowani
Postów: 50
Pomógł: 1
Dołączył: 31.01.2009

Ostrzeżenie: (0%)
-----


Siemka! użyj substringa:

wykrywasz pozycję pierwszego przecinka, wtedy te znaki sprzed "," dajesz do tabeli tymczasowej (albo na bieżąco podmieniasz). Obcinasz przecinek i znaki przed nim. itd.

Wtedy masz każdy po-przecinkowany rekord pokrojony na pojedyncze rekordziki. Ja w pracy zrobiłem to w while za pomocą procedury składowanej.

mam nadzieję że jasno sie wyraziłem.

Ten post edytował someone.cool 5.10.2009, 11:02:24
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 9.10.2025 - 12:49