webForumDet fria alternativet

Går inte att hämta värde?

Databaser & SQLur Databashanterare & SQL

4 svar · 251 visningar · startad av jimpa

jimpaMedlem sedan jan. 2001361 inlägg
#1

Hej,
När jag med Response.Write skriver ut min sql ser det ut såhär:

SELECT fTopics.TopicsID, fTopics.ttForumID, fTopics.ttMemberID,
 fTopics.ttParentID, fTopics.ttDte, fTopics.ttSubject, fTopics.ttMessage,
 Members.MemberID, Members.mNickName, Forums.ForumID,
 Forums.fName, fCategories.CatID, fCategories.cName 
FROM (((fTopics 
LEFT JOIN Members ON Members.MemberID = fTopics.ttMemberID) 
LEFT JOIN Forums ON Forums.ForumID = fTopics.ttForumID) 
LEFT JOIN fCategories ON Forums.fCatID = fCategories.CatID) 
WHERE ( (fTopics.ttSubject LIKE '%test%' OR fTopics.ttMessage 
LIKE '%test%') AND fTopics.ttParentID = CLng(0) 
OR fTopics.TopicsID IN 
(Select TopicsID From fTopics where ttMessage LIKE '%test%' and ttParentID > 0) 
OR [b]fTopics.TopicsID IN 
(Select Count(TopicsID) as cntReply From fTopics where ttParentID > 0) [/b]) 
ORDER BY fTopics.ttDte DESC

I fetmarkerade select-satsen i koden ovan vill jag få fram antal svar i en tråd för.
Koden ovan ger inga felmeddelanden utan problemet är hur jag hämtar värdet? Övriga värden hämtar jag så här och lägger i en array:
.....
arrRecs = RS.GetRows()
for i = 0 to ubound(arrRecs,2)
....

sedan skriver jag ut som vanligt med

arrRecs(0,i)
arrRecs(1,i)
arrRecs(2,i)
osv..
då skulle ju antal svar (cntReply) hämtas som fältnr. 14 alltså "arrRecs(14,i)" eller!? tänker jag fel?
Hur som helst så får jag felmeddelandet
..
Subscript out of range: '[number: 14]'
..
Har även provat så här:
...
cntReply = arrRecs(cntReply,i)
...
Då får jag ett värde, men värdet stämmer inte alls med antal svar , värdet jag får fram är mycket högre?

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

/Jimpa

solbulleMedlem sedan mars 20015 287 inlägg
#2

Utan at egentligen veta tror jag inte du egentligen hämtar värdet till ditt rs.
Måste inte själva hämtningen ske i den "första" selecten?

@ndersMedlem sedan juni 200032 969 inlägg
#3

solbulle tänker rätt. Den selectfrågan är bara del av din where-klausul, och har inget att göra med vilka fält som hämtas. Du får flytta din delfråga så den ligger ihop med SELECT-delen precis i början av frågan.

Mvh

LarsGMedlem sedan dec. 200012 464 inlägg
#4

Flyttas från ASP

jimpaMedlem sedan jan. 2001361 inlägg
#5

Ok.
Tack!

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