den Fri, 1 Feb 2002 23:41:30 +0100 skrev "Ronni - The Real One :-\)"
<ronni1@ofir.dk> :
>Hejsa NG
>
>Jeg har endnu ikke det vilde kendskab til SQL , men står og mangler en SQL
>sætning i forbindelse med
>en side i PHP, databasen er MySQL.
>
>Jeg har en tabel (sprogtabel), hvori der er angivet programmeringssprog
>(lang) og et id for dette programmerings sprog (id)
>I en anden tabel (artikeltabel) har jeg en masse artikler, hvor sproget de
>er skrevet til/i refereres vha langid.
>
>SQL sætningen skal bruges i forbindelse med en submenu, hvor jeg kun vil
>have hevet de sprog fra sprogtabel ud, hvor
>der er skrevet artikler under.
>Eneste måde jeg har kunnet finde en løsning til dette på er ved at løbe
>artikeltabel igennem, undersøge hver enkelt artikel for
>hvilket sprog den er skrevet i og gemme dens id for dernæst hive dem ud fra
>sprogtabel.
>Dvs lave en SQL sætning on the fly, men knap så performance venligt da der
>er en del sortering og jeg skal løbe en hel tabel
>igennem.
>Har forsøgt med noget i retning af
>SELECT * FROM sprogtabel WHERE id = (SELECT langid FROM artikeltabel
>DISTINCT)
>Altså en nested SQL sætning hvor distinct skulle hive unikke (en af hver) af
>langid ud, men det virkede ikke.
>
>Nogen som kan give mig en løsning ?
>
>På forhånd tak for hjælpen!
>
>m v h
>Ronni
>rofe@mailme.dk
>
>
noget ala
SELECT * FROM table1 WHERE id IN (SELECT id FROM table2);
måske ?
http://www.mysql.com/doc/A/N/ANSI_diff_Sub-selects.html