Jump to content
php.lv forumi

dati no divām tabulām ar viltīgu where


hmnc

Recommended Posts

sveiki!

sēžu, lauzu galvu, bet kā nesanāk tā nesanāk izdomāt loģisku queriju.

tātad. piemēra pēc... 2 tabulas:

table: A

id, title
1, viens
2, divi
3, triis
4, chetri

table: B
id, a_id, default
1, 1, 0
2, 1, 1
3, 2, 0
4, 2, 1
5, 3, 0
6, 3, 0

 

ideja tāda - jādabūn visi ieraksti no tabulas A un tabulas B, kur tiek joinots uz a.id=b.a_id, BET - jāselekto tikai tie ieraksti B tabulā, kuriem b.default = 1, taču ja nav b.default=1 tad tiek atgriezts 0 vai dajebkas (galvenais lai tiek selektoti visi ieraksti no A).

 

nepieciešamais gala rezultāts:

a.id, b.a_id, b.id
1,1,2
2,2,4
3,3,null
4,null,null

 

ceru, ka saprotami izskaidroju. ar joiniem man sanāca līdz tam brīdim, kad vajadzēja atgriezt defaultos no B vai arī kad B tabulā a.id netika vispār iekļauts...

 

jau iepriekš paldies.

Link to comment
Share on other sites

[Ya]: ar where beigas neselektes visus no tables A, laikam.

 

man liekas ka: select A.id,A.title,B.id as bid,B.a_id,B.default from B LEFT JOIN A on(B.a_id=A.id and B.default=1)

 

bet varu kludities, neiedzilinajos un neparbaudiju.

Link to comment
Share on other sites

  • 9 months later...
[Ya]: ar where beigas neselektes visus no tables A, laikam.

 

man liekas ka: select A.id,A.title,B.id as bid,B.a_id,B.default from B LEFT JOIN A on(B.a_id=A.id and B.default=1)

 

bet varu kludities, neiedzilinajos un neparbaudiju.

 

V3rb0 - Tu esi glābējs :) on(B.a_id=A.id and B.default=1) iespēju kautkā biju manuālī palaidis garām un nomocījos gandrīz visu dienu :)

Paldies!

Link to comment
Share on other sites

×
×
  • Create New...