webForumDet fria alternativet
Logga in / Bli medlem

count +1

Databaser & SQL

2 svar · 179 visningar · startad av doggelito

Medlem sedan juni 20003 076 inlägg
Frågan#1

Problem igen!

strViewCategories = "Select Fc.Categoryid, Fc.Title, " & _
"(Select Count(Fq.Questionid)Case When Fr.Questionid is not null Then +1 End " & _
"From Forum_Questions Fq Left Join Forum_Replies Fr On Fq.Questionid = Fr.Questionid " & _
"Where Fq.Categoryid = Fc.Categoryid) " & _
"From Book_Categories Fc Order By Fc.Title Asc ;"

chansade lite men det höll aldrig, man får uppenbart inte
använda case på det viset.
den ska räkna ihop frågan +alla svaren i en viss kategori, finns
det svar till frågan så ska 1 plussas på antalet (frågan i sig ingå
därmed i räkningen).

man kan ju lägga en vanlig count och sedan plussa på 1 direkt på
sidan istället men det borde väl gå redan här i sql-strängen, eller?

Medlem sedan dec. 200012 464 inlägg
#2
strViewCategories = "Select Fc.Categoryid, Fc.Title, " & _
"(Select sum(1 + case when Fr.Questionid is not null Then 1 else 0 End)  " & _
"From Forum_Questions Fq Left Join Forum_Replies Fr On Fq.Questionid = Fr.Questionid " & _
"Where Fq.Categoryid = Fc.Categoryid) " & _
"From Book_Categories Fc Order By Fc.Title Asc "
Medlem sedan juni 20003 076 inlägg
#3

Får inte till den riktigt, får summan 6 men har 1 fråga + 3 svar, borde bli 4.
Strunt samma, jag delade precis på "vanliga texten" och på
räknaren och gjorde två hämtningar, kännde att det blev lite för
rörigt tidigare.

Du ska dock ha extra credits för att du svara. :)

361 ms totalt · 4 externa anrop · v20260731065814-full.14655e19
229 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
229 ms — ändringar (db)