/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
INNER JOIN vs. WHERE?
Fra : Stefan Kristensen


Dato : 07-01-05 14:32

Hej NG.

Jeg skal joine to tabeller, Systems og EnterpriseUsers:
Systems: SysID, Computer, FieldName
EnterpriseUsers: SysID, Computer, UserID
Jeg skal kun bruge rækkerne for et bestemt userid. Hvad er smartest: At
bruge en ekstra ON clause eller WHERE?

SELECT s.SystemID, s.Computer, s.FieldName
FROM Systems AS s
INNER JOIN EnterpriseUsers AS eu
ON s.SystemID = eu.SysID
AND s.Computer = eu.Computer
AND eu.UserID = @UserID -- Enten den her
WHERE eu.UserID = @UserID -- Eller den her

Mvh
Stefan



 
 
Jens Gyldenkærne Cla~ (07-01-2005)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 07-01-05 14:50

Stefan Kristensen skrev:

> Jeg skal joine to tabeller, Systems og EnterpriseUsers:

Hvilken database?

> Jeg skal kun bruge rækkerne for et bestemt userid. Hvad er
> smartest: At bruge en ekstra ON clause eller WHERE?

Jeg tror ikke der er performanceforskel - databasen vil sikkert
selv optimere forespørgslen hvis det er nødvendigt.

Jeg ville selv bruge WHERE - da @UserID ikke logisk er en del af
dit join mellem s og eu.
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Stefan Kristensen (07-01-2005)
Kommentar
Fra : Stefan Kristensen


Dato : 07-01-05 20:20

>> Jeg skal joine to tabeller, Systems og EnterpriseUsers:
> Hvilken database?
M$ SQL Server 2000

>> Jeg skal kun bruge rækkerne for et bestemt userid. Hvad er
>> smartest: At bruge en ekstra ON clause eller WHERE?
> Jeg tror ikke der er performanceforskel - databasen vil sikkert
> selv optimere forespørgslen hvis det er nødvendigt.
OK.

> Jeg ville selv bruge WHERE - da @UserID ikke logisk er en del af
> dit join mellem s og eu.
Det forstår jeg.
Sjovt nok giver det ikke samme resultat. Men jeg joiner også tre tabeller.
Jeg er for træt nu men vender frygteligt tilbage med hele proceduren

Tak for svaret indtil videre
Stefan



Søg
Reklame
Statistik
Spørgsmål : 177459
Tips : 31964
Nyheder : 719565
Indlæg : 6408195
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste