OveRRidEMedlem sedan feb. 200112 078 inlägg Jag behöver en query som ger mig två värden från en tabell med meddelanden i.
Tabell:
ID strMess fromId toId
-------------------------------------
1 Hej 23 21
2 Hej igen 21 23
3 Hej då 21 24
Jag vill få fram hur många meddelanden i tabellen som har fromId [integer] och hur många som har toId [samma integer] i en fråga.
Det står still i huvet.. :l
OveRRidEMedlem sedan feb. 200112 078 inlägg Nu står det ännu mer still:
"SELECT (SELECT count(*) AS antalTo FROM mail WHERE toId = " & intUserId & "),(SELECT count(*) AS antalFrom FROM mail WHERE fromId = " & intUserId & ") FROM mail"
Kan man verkligen göra så? :q Det fungerar iallafall, förutom att jag inte kan använda ref antalTo och antalFrom utan måste skriva rs(0) och rs(1).
LarsGMedlem sedan dec. 200012 464 inlägg Jag förstår inte vad du förväntar dig för resultat. Givet dina värden i tabellen, vad skulle du få för resultat då?
OveRRidEMedlem sedan feb. 200112 078 inlägg Om jag frågar med integervärde 21 vill jag ha antalTo till 1 och antalFrom till 2.
LarsGMedlem sedan dec. 200012 464 inlägg När jag ser din fråga så kanske jag förstår
q = "select sum(case when toid = " & id & " then 1 else 0 end) ," & _
" sum(case when fromid = " & id & " then 1 else 0 end) from mail"
Din fråga borde gå om du lägger till distinct annars får du lika många poster som det finns rader i tabellen.
OveRRidEMedlem sedan feb. 200112 078 inlägg Jag la in mina variabelnamn i din fråga, men jag får "Unspecified error." Jag antar att din fråga inte stödjs av Access.. :OO
select sum(case when toId = " & intUserId & " then 1 else 0 end) , sum(case when fromId = " & intUserId & " then 1 else 0 end) from mail
LarsGMedlem sedan dec. 200012 464 inlägg access aah
q = "select sum(iif(toId = " & intUserId & ",1,0)) , sum(iif(fromId = " & intUserId & ",1,0)) from mail"