/ Forside / Teknologi / Udvikling / SQL / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
SQL
#NavnPoint
pmbruun 1704
niller 962
fehaar 730
Interkril.. 701
ellebye 510
pawel 510
rpje 405
pete 350
gibson 320
10  smorch 260
Group By
Fra : Morten Snedker


Dato : 19-04-06 14:03

Del af SELECT-statement i et view:

CASE WHEN SUM(dbo.tblBOF_Bygning.Boligenheder)
> 0 THEN (SUM(dbo.tblBOF_Bygning.Boligenheder) *
25100) + 35000 ELSE 0 END AS TilslutningsPris


Hvordan får jeg den med i min group by?


mvh /Snedker

 
 
Jens Gyldenkærne Cla~ (19-04-2006)
Kommentar
Fra : Jens Gyldenkærne Cla~


Dato : 19-04-06 14:09

Morten Snedker skrev:

> Del af SELECT-statement i et view:
>
> CASE WHEN SUM(dbo.tblBOF_Bygning.Boligenheder)
> > 0 THEN
> > (SUM(dbo.tblBOF_Bygning.Boligenheder) *
> 25100) + 35000 ELSE 0 END AS TilslutningsPris

> Hvordan får jeg den med i min group by?

Enten ved at gentage hele smøren (pånær "as ...") eller også ved at
indkapsle case-sætningen i et ekstra view eller en ekstra
forespørgsel:


CREATE VIEW viewMedCase_vw AS

SELECT foo, bar, CASE WHEN bla THEN 0 ELSE 1 END as tilslutning
FROM foobar
WHERE x = 42

GO

SELECT tilslutning, COUNT(*) FROM viewMedCase_vw
GROUP BY tilslutning


Uden et view kan man sætte parenteser:

SELECT tilslutning, COUNT(*) as antal FROM
(SELECT foo, bar, CASE WHEN .... END as tilslutning
FROM ... WHERE ... )
GROUP BY tilslutning
--
Jens Gyldenkærne Clausen
Svar venligst under det du citerer, og citer kun det der er
nødvendigt for at forstå dit svar i sammenhængen. Se hvorfor og
hvordan på http://usenet.dk/netikette/citatteknik.html

Morten Snedker (19-04-2006)
Kommentar
Fra : Morten Snedker


Dato : 19-04-06 14:59

On Wed, 19 Apr 2006 15:09:06 +0200, Jens Gyldenkærne Clausen
<jens@gyros.invalid> wrote:

>Morten Snedker skrev:
>
>> Del af SELECT-statement i et view:
>>
>> CASE WHEN SUM(dbo.tblBOF_Bygning.Boligenheder)
>> > 0 THEN
>> > (SUM(dbo.tblBOF_Bygning.Boligenheder) *
>> 25100) + 35000 ELSE 0 END AS TilslutningsPris
>
>> Hvordan får jeg den med i min group by?
>
>Enten ved at gentage hele smøren (pånær "as ...") eller også ved at
>indkapsle case-sætningen i et ekstra view eller en ekstra
>forespørgsel:

Jeg gi'r den en chance med et indlejret view så. Der er ikke mulighed
for at medtage "hele smøren" i min GROUP BY på grund af SUM-delen.


Tak for buddet.


mvh /Snedker

Peter Lykkegaard (19-04-2006)
Kommentar
Fra : Peter Lykkegaard


Dato : 19-04-06 14:15


Morten Snedker skrev:

> Del af SELECT-statement i et view:
>
> CASE WHEN SUM(dbo.tblBOF_Bygning.Boligenheder)
> > 0 THEN (SUM(dbo.tblBOF_Bygning.Boligenheder) *
> 25100) + 35000 ELSE 0 END AS TilslutningsPris
>
>
> Hvordan får jeg den med i min group by?
>

Select TilslutningsPris From (
Select
CASE
WHEN
SUM(dbo.tblBOF_Bygning.Boligenheder) > 0
THEN (SUM(dbo.tblBOF_Bygning.Boligenheder) * 25100) + 35000
ELSE
0
END
AS TilslutningsPris
)
Group by TilslutningsPris


+ evt felter du også skal bruge :)

- Peter


Morten Snedker (19-04-2006)
Kommentar
Fra : Morten Snedker


Dato : 19-04-06 15:18

On 19 Apr 2006 06:15:01 -0700, "Peter Lykkegaard"
<peter.aghl@gmail.com> wrote:


>- Peter

Natürlich. Das is doch hübcsh! = B-b

mvh /Snedker :)

Søg
Reklame
Statistik
Spørgsmål : 177458
Tips : 31962
Nyheder : 719565
Indlæg : 6408173
Brugere : 218881

Månedens bedste
Årets bedste
Sidste års bedste