none
Formatierung Subselect RRS feed

  • Frage

  • Ich habe eine Frage zur Formatierung einer Subselect - Abfrage. Ich habe folgende Abfrage:

    select dbo.Tabelle.Feld, 
    
    
    (select CAST(ROUND((COUNT(*)/2),1) AS int) from [DB].dbo.Tabelle where
    (Bedingung)
    as ES_now
    

    from dbo.Tabelle
    

    Die Berechnung des Wertes in der Unterabfrage funktioniert tadellos und die ganze Abfrage ist auch o.k. Das einzige Problem ist, dass der berechnete Wert (ES_now) als Text ausgegeben wird und wohl demzufolge keine Dezimalstellen enthält.

    Wie man sieht, habe ich mit CAST versucht, das Problem gleich bei COUNT zu lösen, aber ohne Erfolg.

    Ich wäre um einen Tipp sehr froh!

    Vielen Dank und beste Grüsse
    Martin Schneider

    Donnerstag, 24. November 2011 07:18

Antworten

  • Hallo Martin,

    das Problem ist, dass das Ergebnis von COUNT ein int ist, damit wird das weitere Ergebnis auch gecastet.

    Dein expliziter Cast in int ist dann zusätzlich hinderlich, denn wo soll bei einem int die Nachkommastelle herkommen?

    SELECT CONVERT( float, COUNT( 1 ) ) / 2
    FROM   <Tabelle>
    
    


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Donnerstag, 24. November 2011 07:51
    Moderator

Alle Antworten

  • Hallo Martin,

    das Problem ist, dass das Ergebnis von COUNT ein int ist, damit wird das weitere Ergebnis auch gecastet.

    Dein expliziter Cast in int ist dann zusätzlich hinderlich, denn wo soll bei einem int die Nachkommastelle herkommen?

    SELECT CONVERT( float, COUNT( 1 ) ) / 2
    FROM   <Tabelle>
    
    


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Donnerstag, 24. November 2011 07:51
    Moderator
  • Hallo Stefan

    Herzlichen Dank! Hat mein Problem gelöst. Werde mich wohl mal ein bisschen mit Convert und Cast befassen müssen ;-)

    Viele Grüsse
    Martin

    Donnerstag, 24. November 2011 13:04