webForumDet fria alternativet

Fel med sub select i sql

2 svar · 187 visningar · startad av jimpa

jimpaMedlem sedan jan. 2001361 inlägg
#1

Hej

Håller på med en sökfunktion i ett forum. Har en tabell som heter fTopics där trådens huvudinlägg och ev. svar sparas. Det jag försöker gör är att plocka fram trådens huvudinlägg MEN om sökordet skulle finnas med i ett svar så vill jag få med den tillhörande trådens huvudinlägg. Jag får följande felmeddelande:

SQLState: S1000
Native Error Code: -3063
[INTERSOLV][ODBC SequeLink driver][ACCESS][Microsoft][ODBC Microsoft Access Driver] You have written a subquery that can return more than one field without using the EXISTS reserved word in the main query's FROM clause. Revise the SELECT statement of the subquery to request only one field.

Så här ser min sql-sats ut när jag skriver ut med response.write:

SELECT fTopics.TopicsID, fTopics.ttForumID, 
fTopics.ttMemberID, fTopics.ttParentID, 
fTopics.ttDte, fTopics.ttSubject, 
fTopics.ttMessage 
FROM fTopics 
WHERE ((fTopics.ttSubject LIKE '%röd%' 
OR fTopics.ttMessage LIKE '%röd%') 
AND fTopics.ttParentID = CLng(0) 
OR fTopics.TopicsID IN (Select TopicsID, ttParentID, ttDte, ttSubject, ttMessage 
From fTopics 
Where ttSubject LIKE '%röd%' or ttMessage LIKE '%röd%' and ttParentID > CLng(0))) 
ORDER BY fTopics.ttDte ASC

Någon som kan se vad jag gör för fel?

LarsGMedlem sedan dec. 200012 464 inlägg
#2
(Select TopicsID From fTopics 
Where ttSubject LIKE '%röd%' or ttMessage LIKE '%röd%' and ttParentID > 0)
jimpaMedlem sedan jan. 2001361 inlägg
#3

Tack!!
Önskar att jag skrev mitt inlägg för ca:2.5 timmar sedan

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