webForumDet fria alternativet

Visa en träff enbart från tabell 2 om join finns

Databaser & SQL

9 svar · 493 visningar · startad av Mattias Nordin

Medlem sedan dec. 20051 056 inlägg
Frågan#1

Tabell Org innehåller 18925 poster.

Vill få ut alla 18925 Org.OrgName ur tabellen Org och vill även att om denna Org.OrgName har någon match i product tabellen så ska en (1) av dessa visas.

sql = "SELECT Distinct Org.OrgName, Org.Org_ID, Product.Product "
sql = sql &" FROM Org "
sql = sql &" LEFT JOIN Product ON Org.Org_ID = Product.Org_ID "
set rs = varConnect.execute(sql)

Visar 64 000 träffar. Jag gör med andra ord fel. Please help.

Medlem sedan dec. 200012 464 inlägg
#2

så ska en (1) av dessa visas.

Vilken?

Medlem sedan dec. 20051 056 inlägg
#3

God morgon. :)

Jag försöker få ut en lista på alla ur "Org" (ska returnera 18000 rader) och om Org.Org_ID har en match någonstans i Product.Org_ID så ska Product.Product vara en del av min record set.

Typ

Företag | Produkt

A -
B -
C Senap
D Korv
E -

Hmmm. Jag är dålig på att förklara.

Medlem sedan juni 200032 967 inlägg
#4

Ja, men om det blir träff på mer än ett ställe i product (vilket ju tydligen är det som händer), vilken av produkterna skall då visas?

Medlem sedan dec. 20051 056 inlägg
#5

Product tabellen kan ha en massa produkter som är kopplade till Org.Org_ID men det kvittar. Jag vill bara få ut en indikation på organisationer som inte har någon koppling till products tabellen.

Medlem sedan juni 200032 967 inlägg
#6

Men alltså. Vill du ha ut alla, eller de organisationer som inte har någon koppling till products-tabellen???

Om det senare stämmer;

... WHERE Product.Org_ID IS NULL
Medlem sedan dec. 200012 464 inlägg
#7

Exempel

Om det för C finns produkterna

BLOMKÅL
SENAP
V1

så måste du ha något sätt att bestämma vilken av dessa som skall väljas.

ED:
Eftersom detta var postat som svar till 3:e posten så kan det bortses från

Medlem sedan dec. 20051 056 inlägg
#8

Det duger med vilken som helst av

BLOMKÅL
SENAP
V1

Men bara en av dem ska returneras så att jag bara får en C och inte tre C.

Medlem sedan dec. 200012 464 inlägg
#9
sql = "SELECT Org.OrgName, Org.Org_ID, " & _
     "(select max(product) from product where  Org.Org_ID = Product.Org_ID) as product " & _
  " FROM Org "
Medlem sedan dec. 20051 056 inlägg
#10

Precis rätt... Jag måste lära mig nästlade frågor märker jag.

Superbussigt alla !

338 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
210 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)