webForumDet fria alternativet

Liten enkel sql fråga

5 svar · 463 visningar · startad av Vinnaren

VinnarenMedlem sedan sep. 2005833 inlägg
#1

Tja,

Har följande:

SELECT c.Header, s.Name, tf.DepartmentId

FROM forum_Category AS c

INNER JOIN DepartmentsToForum AS tf
ON tf.CategoryId = c.CategoryId

LEFT OUTER JOIN Departments AS s
ON s.DepartmentId = tf.DepartmentId

WHERE c.CategoryId = 13

Denna returnerar bara de Departments som finns registrerade i DepartmentsToForum men jag vill ha ut alla rader som finns i Departments, oavsett om de e registrerade i DepartmentsToForum.

ex.
Rubrik - Department 1 - 2
Rubrik - Department 2 - 3
Rubrik - Department 3 - NULL

Hur löser man detta? (MSSQL)

Tacksam för all hjälp :stud

Peter SMedlem sedan dec. 20025 483 inlägg
#2

Vill du i första hand visa departments eller forum_categories? Om det förstnämnda:

SELECT c.Header, s.Name, tf.DepartmentId

FROM Departments AS s

LEFT OUTER JOIN DepartmentsToForum AS tf
ON ON s.DepartmentId = tf.DepartmentId  

LEFT OUTER JOIN forum_Category AS c
tf.CategoryId = c.CategoryId

WHERE c.CategoryId = 13

Om däremot det sistnämnda är det som gäller så måste poster finnas i departmentsToForum för att du skall kunna visa departments. Alltså bör din nuvarande fråga fungera.

VinnarenMedlem sedan sep. 2005833 inlägg
#3

tack, men den ger samma resultat, dvs
Rubrik - Department 1 - 2
Rubrik - Department 2 - 3

inte
Rubrik - Department 1 - 2
Rubrik - Department 2 - 3
Rubrik - Department 3 - NULL

Det kanske inte går o göra på detta sätt? :stud

Peter SMedlem sedan dec. 20025 483 inlägg
#4

Nej, precis. För en forumkategori kan du inte hämta department utan att inte samtidigt hämta department-id. Detta eftersom department är beroende av att det finns motsvarande poster i departmentsToForum.

nitro2k01Medlem sedan aug. 20039 342 inlägg
#5

Pröva RIGHT OUTER JOIN forum_Category AS c

VinnarenMedlem sedan sep. 2005833 inlägg
#6

Tack, men det vill inte fungera. Får köra två frågor istället.

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)