webForumDet fria alternativet

Något sätt att göra detta distinct

2 svar · 149 visningar · startad av erka

erkaMedlem sedan dec. 19996 522 inlägg
#1

Idag har jag denna kod i en liten sökfunktion mot en access databas.

strSQL = "SELECT Forums.PK_ForumId, Forums.Name, Replies.PK_ReplieId, Replies.FK_TopicId, Replies.From, "_
		&"Replies.Inserted, Replies.Content, Topics.PK_TopicId, Topics.FK_ForumId, Topics.From, Topics.Header, "_
		&"Topics.Content, Topics.Inserted "_
		&"FROM (Forums INNER JOIN Topics ON Forums.PK_ForumId = Topics.FK_ForumId) "_
		&"left outer  JOIN Replies ON Topics.PK_TopicId = Replies.FK_TopicId "_
		&"WHERE Topics.Header LIKE '%"& strSearch &"%' OR Topics.Content LIKE '%"& strSearch &"%' "_
		&" OR Replies.Content LIKE '%"& strSearch &"%' OR Topics.From LIKE '%"& strSearch &"%' "_
		&" OR Replies.From LIKE '%"& strSearch &"%'"

Problemet är att jag har en topic som har 5 svar, olle har skrivit topicen och postat 2 svar, om jag söker på olle så kommer alla fem inlägg + topicen upp eftersom han finns i bägge. Måste jag skriva 2 sql frågor?

1. Söker igenom tabellen Topics och skriver ut dem
2. Söker igenom tabellen Replies och skriver ut dem

eller går det att lösa med någon skum sql kod :) LarsG kanske har ett enkelt svar som alltid ;)

------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Gör två sökfrågor men använd en union för att få ett resultat.

------------------
essentitia preter non sans multiplicandum

erkaMedlem sedan dec. 19996 522 inlägg
#3

Ibland tänkar man inte längra än ögonhålorna räcker, det där kan jag ju för du har förklarat det en gång innan :) tack för nyinlärningen

------------------
Real mad hiphop flavaz kickin' it right from tha street without no FEAR, Yo !

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