SitePoint Sponsor

User Tag List

Results 1 to 6 of 6
  1. #1
    SitePoint Addict
    Join Date
    Dec 2004
    Location
    netherlands
    Posts
    229
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    SOLVED by myself :-)Calculate within Query ?

    Hi all,
    I was wondering (and trying) if I can calculate within a query.
    This is what I want:
    Code:
    truncate(score.punten ,2) AS Punten ,
    truncate(score.Tijd, 2) AS Tijd,
    MAX ((Punten) / (Tijd)) AS Hitfactor
    Any ideas ??
    Last edited by pookie62; Jan 6, 2005 at 03:41.

  2. #2
    SitePoint Enthusiast
    Join Date
    Mar 2004
    Location
    Ukraine, Khmelnitsky
    Posts
    55
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    "Punten" and "Tijd" are aliases.
    You can use an alias to refer to a column in the GROUP BY, ORDER BY, or in the HAVING part.
    SELECT and WHERE parts - no.

    So, third line is invalid.
    Sergey Bres aka tserbis, Ukraine

  3. #3
    SitePoint Addict
    Join Date
    Dec 2004
    Location
    netherlands
    Posts
    229
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Thanks for replying, tserbis.
    Let me post the entire query then. I tried to implement the calculation in the HAVING part but without suc6... Can you show how I should do this ??

    Code:
    SELECT  klasse.Klasse, 
    deelnemer.Naam AS Deelnemer, 
    deelnemer.Vereniging AS Vereniging, deelnemer.
    URL AS URL, wedstrijd.Naam AS Wedstrijd, 
    truncate(score.punten ,2) AS Punten,
    score.tijd AS tijd
    FROM deelnemer inner join inschrijving on deelnemer.Id = inschrijving.DeelnemerId 
    inner join wedstrijd on inschrijving.WedstrijdId = wedstrijd.Id 
    inner join klasse on inschrijving.KlasseId = klasse.Id 
    inner join score on inschrijving.Id = score.InschrijvingId 
    inner join score as s2 on inschrijving.Id = s2.InschrijvingId 
    where wedstrijd.Naam = ('RH Challenge') 
    GROUP BY klasse.Klasse, deelnemer.Naam, deelnemer.Vereniging , deelnemer.URL, wedstrijd.Naam, truncate(score.punten ,2) 
    HAVING Punten = min(truncate(s2.punten,2)) AND
    MAX ((Punten)/(tijd)) AS HitF,
    ORDER BY klasse.Klasse,Punten desc

  4. #4
    SitePoint Enthusiast
    Join Date
    Mar 2004
    Location
    Ukraine, Khmelnitsky
    Posts
    55
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    5 inner joins!
    Sorry, I'm pass...
    Sergey Bres aka tserbis, Ukraine

  5. #5
    SitePoint Addict
    Join Date
    Dec 2004
    Location
    netherlands
    Posts
    229
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Too bad..
    Thanks anyway !

  6. #6
    SitePoint Addict
    Join Date
    Dec 2004
    Location
    netherlands
    Posts
    229
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Solved by a cleu from another post..
    This is the working query for those interested :

    Code:
    SELECT  klasse.Klasse, 
    deelnemer.Naam AS Deelnemer, 
    deelnemer.Vereniging AS Vereniging, 
    deelnemer.URL AS URL, 
    wedstrijd.Naam AS Wedstrijd, 
    truncate(score.punten ,2) AS Punten ,
    truncate(score.Tijd, 2) AS Tijd,
    truncate((score.punten / score.tijd),2) AS HitF
    FROM deelnemer 
    inner join inschrijving on deelnemer.Id = inschrijving.DeelnemerId 
    inner join wedstrijd on inschrijving.WedstrijdId = wedstrijd.Id 
    inner join klasse on inschrijving.KlasseId = klasse.Id 
    inner join score on inschrijving.Id = score.InschrijvingId 
    inner join score as s2 on inschrijving.Id = s2.InschrijvingId 
    where wedstrijd.Naam = ('Quik & Easy 10') 
    GROUP BY klasse.Klasse, deelnemer.Naam, deelnemer.Vereniging , deelnemer.URL, wedstrijd.Naam, truncate(score.punten ,2) 
    HAVING Punten = min(truncate(s2.punten,2)) 
    ORDER BY klasse.Klasse,HitF desc


Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •