Sziasztok!
Lehet nagyon hülyén fog hangazni a kérdés MSSQL adatbáziban lévő 3 különböző táblából szeretnék adatot lekérni * nem vagyok SQL expert* ami a problémám
a tábla
b tábla
c tábla
a.szemelyid , b.azonositoid, b.elemid, b.adat, b.ervenyessegkezdete, b.ervenyessegvege
c.elemid, c.elemnev, c.bookid
Amit szeretnék megoldani az a következő: egy SQL parancsot összerakni úgy hogy egy datagridview-ban egyben lásstam az összes adatot. A többi lekérdezéshez már összeraktam néhány INNER JOINT-ot de itt megakadtam.
A drigviewban amit látni szeretnék az a következő a.nev, a.nem stb ... c.elemnev
Ami alap: a.szemelyid=b.azonositoid, b.elemid=c.elemid
Néhány extra csavar van még a b.azonositoid -hoz több rekordon is van bejegyzés viszont minden egyes bejegyzés esetén a b.elemid más más érték lehet (az érték készlet fix kb 10) mert ezt csak egy referencia érték amit a c.elemidhez tartozó c.elemnev adja meg a valós adat tartalmat.
Tehát szeretném ezekhez a FIX értékekhez az adat tartalmat a datagridview megjelentetni a FIX értékek lehetnek a header-ök. Egy kitétemény van még amennyiben egy FIX érték többször szerepel abbból csak a VALID értéket kell megjeleníteni amit a b.ervenyessegvege mező szabályoz. HA az érték NULL akkor az az adat a valid.
Ha nagyon spongyolán fogalmaztam, akkor elnézést.
Amit eddig összetettem:
SELECT a.csnev , a.knev, a.adoaz, a.szulido, c.elemnev As Neme, b.elemid,alkalmazas.datumtol, alkalmazas.datumig, STUFF((SELECT ', ' + kapcsolat.adatok FROM kapcsolat WHERE kapcsolat.szemelyid = a.szemelyid FOR XML PATH('')), 1, 2, '') AS KapcsolatLista " &
"FROM a " &
"INNER JOIN alkalmazas ON a.szemelyid = alkalmazas.szemelyid " &
"INNER JOIN c ON a.elmid = c.elemid " &
"INNER JOIN b ON a.szemelyid = b.szemelyid "
Ez hoz rendesen találatot de ettől én még felkötöm magam mert ez minden de nem szép és sz@r.
Ebben kérném a segítségeteket.
Köszönöm
[ Szerkesztve ]