DevProTalk

Forumi IT profesionalaca
web development, web design, e-business, SEO


Idite nazad   DevProTalk > Web development i web aplikacije > SQL baze podataka - Sponzor: Baze-Podataka.net
Želite da se reklamirate ekskluzivno na ovoj poziciji? Javite se

SQL baze podataka - Sponzor: Baze-Podataka.net MySQL, MSSQL, Oracle, Access, ODBC. Ako imate problem brže i preciznije ćete dobiti odgovor ako priložite strukturu tabela ili skript koji kreira tabele i puni ih test podacima umesto što to problem opisujete samo rečima. Sponzor: Baze-Podataka.net - Blog o bazama podataka

Odgovori
 
Alati teme Način prikaza
Staro 14. 04. 2008.   #1
Ivan
Psychedelictrance freak
Wrote a book
 
Avatar Ivan
 
Datum učlanjenja: 04.06.2006
Lokacija: Srbija, Beograd
Poruke: 1.008
Hvala: 325
933 "Hvala" u 34 poruka
Ivan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoro
Pošaljite poruku preko Skype™ za Ivan
Default LIKE, vise zapisa

Prvo da napomenem da nisam znao kako jasnije da napisem naslov, pa ako neko ima ideju neka zameni, hvala ...

Imam sledeci problem: Postoji tablica sa X zapisa, struktura otprilike izgleda ovako:

|id|title|text|code_name|
-------------------------
1|title1|neki_text1|XDJENOEP|
2|title2|neki_text2|DJE13NJD|
3|title3|neki_text3|PLKAZYW|

I sad, imam drugu tablicu gde se cuvaju delovi polja code_name, npr: E13, ZYW. Te, da kazemo delove polja code_name, vadim jednim kverijem.

Nakon toga mi je potrebno da iz prve tablice izvucem odredjen broj zapisa (neka bude 1) ali tako da code_name bude "LIKE" onaj deo koji sam izvukao iz druge tablice.
Za sada izgleda jednostavno, za svaki deo code_name koji sam izvukao napisem kveri tipa: "SELECT * FROM table1 WHERE code_name LIKE '%E13%' LIMIT 1". Ovo pustim u petlju za svaki zapis i to je to.

Ali problem je cu imati mnogo zapisa i to ce da oduzme previse vremena, zanima me da li postoji nekin nacin da se stavi vise LIKE uslova i da se za svaki izvuce po jedan zapis ... ?

Nadam se da ste razumeli ? I da neko ima ideju kako ovo da resim ... ?

Hvala,
Ivan
Ivan je offline   Odgovorite uz citat
Staro 14. 04. 2008.   #2
kalkulus
Dusko Petrovic
Professional
 
Avatar kalkulus
 
Datum učlanjenja: 10.06.2005
Lokacija: Beograd
Poruke: 297
Hvala: 14
1.151 "Hvala" u 9 poruka
kalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished roadkalkulus is on a distinguished road
Pošaljite ICQ poruku za kalkulus
Default

mozesh ti da stavish vishe uslova u upit

SELECT * FROM table1 WHERE code_name LIKE '%E13%' OR code_name LIKE '%ZYW%' OR code_name LIKE..
__________________
I know it all, I just can't remember it all at once
Blog / Pisanije / Best Engagement Rings / Blues DVDs

Poslednja izmena od kalkulus : 14. 04. 2008. u 22:10.
kalkulus je offline   Odgovorite uz citat
Staro 14. 04. 2008.   #3
Ivan
Psychedelictrance freak
Wrote a book
 
Avatar Ivan
 
Datum učlanjenja: 04.06.2006
Lokacija: Srbija, Beograd
Poruke: 1.008
Hvala: 325
933 "Hvala" u 34 poruka
Ivan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoro
Pošaljite poruku preko Skype™ za Ivan
Default

Da, ali to ne znaci da cu da dobijem sigurno jedan zapis koji sadrzi "E13" i jedan zapis koji sadrzi "ZYW". Vec mogu da dobijem dva sa istim delom code_name, zavisno vec od redosleda zapisa u bazi i ostalih uslova.

Nadam se da je sada jasnije sta mi je potrebno ...
Ivan je offline   Odgovorite uz citat
Staro 14. 04. 2008.   #4
LiquidBrain
Milan Cvejic
Wrote a book
 
Avatar LiquidBrain
 
Datum učlanjenja: 05.09.2006
Lokacija: Beograd
Poruke: 1.241
Hvala: 32
73 "Hvala" u 56 poruka
LiquidBrain će postati "faca" uskoro
Pošaljite poruku preko Yahoo za LiquidBrain
Default

distinct?
__________________
http://weevify.com
LiquidBrain je offline   Odgovorite uz citat
Staro 14. 04. 2008.   #5
Dejan Topalovic
old school
Professional
 
Datum učlanjenja: 15.02.2006
Lokacija: Wien, Austria
Poruke: 304
Hvala: 121
47 "Hvala" u 26 poruka
Dejan Topalovic će postati "faca" uskoro
Pošaljite poruku preko MSN za Dejan Topalovic
Default

Hm, nisam siguran da sam ispravno shvatio sta zelis, ali mozda ti ovo moze pomoci?
Kôd:
select cn.* 
from code_names as cn, code_pieces as cp 
where instr(cn.code_name, cp.code_piece) > 0 
and cp.code_piece = 'E13';
__________________
Blog: Baze podataka
------------------------
Oracle OCP DBA
Oracle OCE SQL Expert
Oracle OCP Developer
Certified MySQL DBA
Dejan Topalovic je offline   Odgovorite uz citat
Staro 15. 04. 2008.   #6
jablan
VD IT Direktora
Invented the damn thing
 
Avatar jablan
 
Datum učlanjenja: 08.06.2005
Lokacija: Beograd
Poruke: 2.118
Hvala: 503
1.307 "Hvala" u 282 poruka
jablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamen
Default

A nešto na foru:
Kôd:
SELECT * FROM delovi d
LEFT JOIN puni p ON p.polje LIKE '%' + d.polje + '%'
?
__________________
blog
jablan je offline   Odgovorite uz citat
Staro 15. 04. 2008.   #7
Ivan
Psychedelictrance freak
Wrote a book
 
Avatar Ivan
 
Datum učlanjenja: 04.06.2006
Lokacija: Srbija, Beograd
Poruke: 1.008
Hvala: 325
933 "Hvala" u 34 poruka
Ivan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoroIvan će postati "faca" uskoro
Pošaljite poruku preko Skype™ za Ivan
Default

Hm nijedno resenje mi ne pomaze, ajd da probam da objasnim ponovo:

Tablica 1:

|id|title|text|code_name|
-------------------------
1|title1|neki_text1|XDJENOEP|
2|title2|neki_text2|DJEN3NJD|
3|title3|neki_text3|PLKAZYW|

Tablica2:

|id|code_pieces1|code_pieces2|
-------------------------
1|XDJ|JEN|
2|JE1|ZYW|

Ono sto prvo uradim je da selektujem iz tablice 2 ove delove koda i pustim to u petlju. Dakle za prvi krug imacemo "XDJ" i "JEN".

Sada mi treba kveri koji ce da izvuce, iz tablice 1, jedan zapis koji u polju code_name ima deo LIKE "XDJ" i jedan zapis koji ima deo LIKE "JEN". Ovo moze lako da se izvede sa dva kverija ali je pitanje kako sa jednim ...

Dakle nesto ovako:
"SELECT * FROM tablica1 WHERE code_name LIKE 'XDJ' OR code_name LIKE 'JEN' LIMIT 2"

I da ovaj kveri vrati:

|id|title|text|code_name|
-------------------------
1|title1|neki_text1|XDJENOEP|
2|title2|neki_text2|DJEN3NJD|

Ovo ce u nekim slucajevima i da vrati ovakav rezultat ali nece uvek, tj nece kada bude bilo vise "slicnih" zapisa. Tada ce da vrati npr dva zapisa LIKE 'XDJ', a distinct ne mogu da radim jer je polje "slicno" a ne isto ...

Jasnije sada ?

Hvala ...
Ivan je offline   Odgovorite uz citat
Staro 15. 04. 2008.   #8
kodi
133t
Master
 
Avatar kodi
 
Datum učlanjenja: 07.01.2006
Lokacija: Beograd
Poruke: 714
Hvala: 16
37 "Hvala" u 28 poruka
kodi is on a distinguished road
Pošaljite ICQ poruku za kodi
Default

Citat:
Originalno napisao Ivan Pogledajte poruku

Jasnije sada ?

Hvala ...


edit, sad mislim da razumem, neces da ti dva puta vrati isti row?
__________________

Poslednja izmena od kodi : 16. 04. 2008. u 00:10.
kodi je offline   Odgovorite uz citat
Staro 15. 04. 2008.   #9
misk0
majstor
Wrote a book
 
Avatar misk0
 
Datum učlanjenja: 30.01.2006
Lokacija: Lugano - Switzerland
Poruke: 1.251
Hvala: 219
106 "Hvala" u 67 poruka
misk0 će postati "faca" uskoromisk0 će postati "faca" uskoro
Pošaljite ICQ poruku za misk0 Pošaljite poruku preko Skype™ za misk0
Default

A nesto kao

Kôd:
SELECT t1.code_pieces1, t1.code_pieces2, t2.code_name FROM tablica2 as t1
JOIN tablica1 as t2 ON t2.code_name LIKE t1.code_pieces1 OR t2.code_name LIKE t1.code_pieces2
(ovo je iz glave, moguce da ima kakvih syntax gresaka.

Poslednja izmena od misk0 : 16. 04. 2008. u 00:02.
misk0 je offline   Odgovorite uz citat
Staro 16. 04. 2008.   #10
jablan
VD IT Direktora
Invented the damn thing
 
Avatar jablan
 
Datum učlanjenja: 08.06.2005
Lokacija: Beograd
Poruke: 2.118
Hvala: 503
1.307 "Hvala" u 282 poruka
jablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamenjablan je pravi dragi kamen
Default

U prvoj poruci nisi pomenuo da imaš dve kolone sa delovima koda. Je l' to konačno dve kolone ili n kolona? Zašto ti to nije normalizovano? Koji problem ustvari rešavaš?
__________________
blog
jablan je offline   Odgovorite uz citat
Odgovori



Pravila pisanja
Možete ne započinjati nove teme
Možete ne slati odgovore
Možete ne slati priloge
Možete ne izmeniti svoje poruke
vB kôd je Uključen
Smajliji su Uključen
[IMG] kod je Uključen
HTML kôd je Isključen
Pogledajte forum

Slične teme
Tema Početna poruka teme Forum Odgovori Poslednja poruka
SEO na vise domena? Pedja Marketing i SEO 32 30. 12. 2012. 03:23
Stvaranje matričnog zapisa iz hrpe input podataka blackshtef Sva početnička pitanja 2 27. 05. 2010. 09:19
cookies za vise domena bluesman PHP 9 07. 04. 2008. 22:24
Sta vise vredi? oksite e-Business 20 09. 05. 2007. 01:07
Ispljujte me... da vise ne gledam ovo boccio Web site, dizajn i multimedia 8 03. 11. 2005. 10:55


Vreme je GMT +2. Trenutno vreme je 11:17.


Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.
Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.