10. maj 2008 - 17:16
Der er
4 kommentarer og 1 løsning
Hjaelp til select
Jeg har to tabeller (t1 og t2) med 1(t1) til mange(t2) relation. Jeg kunne godt taenke mig at lave foelgende SQL saetning, men det virker ikke: SELECT * FROM t1, (SELECT TOP 1 * FROM t2 WHERE t1.id = t2.id) WHERE t1.id = t2.id Dvs. for hver t1 row, join een row fra t2. Hvordan goeres dette?
Annonceindlæg fra Cepheo
SELECT * FROM t1,t2 WHERE t1.id = t2.id AND "hvad der skal tests på for at sikre kun en række" det fremgår ikke af spørgsmålet hvilken række i t2 der skal vælges hvis der er flete
Et eksempel siger mere end 1000 ord: t1: id, kode 1 , p1 2 , a1 t2: id, guid 1 , {D0749B36-42D1-402a-B162-00F2EA6464D0} 1 , {4C56C090-4883-44d3-A223-C29E7117B5AE} 2 , {4D66FFD0-92B3-4525-B0FA-45CA031AC24C} 2 , {B392B061-E351-4c63-8F59-F03AB05CE01E} 2 , {12E47E71-E453-4aa5-B65A-2303770299BB} Det jeg vil have ud er: p1, {D0749B36-42D1-402a-B162-00F2EA6464D0} a1, {4D66FFD0-92B3-4525-B0FA-45CA031AC24C} Hvordan kan jeg lave et filter paa t2???? Jeg har adgang til db'en. Jeg kan aendre dens tabeller og disses kolonner. Kraever det dette for at faa denne funktionalitet, er jeg villig til dette...
Der er ikke noget i det der som angiver efter hvilket kriterie du vælger GUID. SELECT t1.kode,MAX(t2.guid) FROM t1,t2 WHERE t1.id=t2.id GROUP BY t1.kode vil hente den største guid
arne_v>> great, jeg troede ikke min og max virkede paa strenge... Mange tak, svar => point.
Det gør de. Den bruger sorterings rækkefølge. Og svar.
Computerworld tilbyder specialiserede kurser i database-management