Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. Database & SysAdmin
  3. Database
  4. how to select last row on second CTE

how to select last row on second CTE

Scheduled Pinned Locked Moved Database
tutorial
5 Posts 4 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    mamatsiantar
    wrote on last edited by
    #1

    use PARA2;
    with pel(reg,inst,nama,alamat,sts)
    as (select p.ID_Pelanggan
    ,p.No_Pelanggan
    ,p.Nama_Pelanggan
    ,p.Alamat
    ,case when p.Status_Pelanggan=2 then 'Aktip'
    else 'Non Aktip'end'Status'
    from PELANGGAN p),
    ganti(reg,ml,nml,mb,nmb,thn)
    as (select g.ID_Pelanggan
    ,g.Meter_Lama
    ,g.Nomor_Lama
    ,g.Meter_Baru
    ,g.Nomor_Baru
    ,g.Tanggal
    from GANTI_Log g)
    select p.reg
    ,p.inst
    ,p.nama
    ,p.alamat
    ,p.sts
    ,g.ml
    ,g.nml
    ,g.mb
    ,g.nmb
    ,g.thn
    from pel p left outer join ganti g
    on p.reg=g.reg
    order by p.reg

    B J 2 Replies Last reply
    0
    • M mamatsiantar

      use PARA2;
      with pel(reg,inst,nama,alamat,sts)
      as (select p.ID_Pelanggan
      ,p.No_Pelanggan
      ,p.Nama_Pelanggan
      ,p.Alamat
      ,case when p.Status_Pelanggan=2 then 'Aktip'
      else 'Non Aktip'end'Status'
      from PELANGGAN p),
      ganti(reg,ml,nml,mb,nmb,thn)
      as (select g.ID_Pelanggan
      ,g.Meter_Lama
      ,g.Nomor_Lama
      ,g.Meter_Baru
      ,g.Nomor_Baru
      ,g.Tanggal
      from GANTI_Log g)
      select p.reg
      ,p.inst
      ,p.nama
      ,p.alamat
      ,p.sts
      ,g.ml
      ,g.nml
      ,g.mb
      ,g.nmb
      ,g.thn
      from pel p left outer join ganti g
      on p.reg=g.reg
      order by p.reg

      B Offline
      B Offline
      Bernhard Hiller
      wrote on last edited by
      #2

      What do you mean with "last row" - is it the row with newest date (g.Tanggal), and what would you like to select if no entry is present yet? What about

      ...
      as (select TOP 1 g.ID_Pelanggan
      ,g.Meter_Lama
      ,g.Nomor_Lama
      ,g.Meter_Baru
      ,g.Nomor_Baru
      ,g.Tanggal
      from GANTI_Log g
      Order by g.Tanggal desc
      )
      ...

      1 Reply Last reply
      0
      • M mamatsiantar

        use PARA2;
        with pel(reg,inst,nama,alamat,sts)
        as (select p.ID_Pelanggan
        ,p.No_Pelanggan
        ,p.Nama_Pelanggan
        ,p.Alamat
        ,case when p.Status_Pelanggan=2 then 'Aktip'
        else 'Non Aktip'end'Status'
        from PELANGGAN p),
        ganti(reg,ml,nml,mb,nmb,thn)
        as (select g.ID_Pelanggan
        ,g.Meter_Lama
        ,g.Nomor_Lama
        ,g.Meter_Baru
        ,g.Nomor_Baru
        ,g.Tanggal
        from GANTI_Log g)
        select p.reg
        ,p.inst
        ,p.nama
        ,p.alamat
        ,p.sts
        ,g.ml
        ,g.nml
        ,g.mb
        ,g.nmb
        ,g.thn
        from pel p left outer join ganti g
        on p.reg=g.reg
        order by p.reg

        J Offline
        J Offline
        Jorgen Andersson
        wrote on last edited by
        #3

        Bernhards solution is valid for SQLServer. But what if you don't use SQL Server?

        Wrong is evil and must be defeated. - Jeff Ello[^]

        L 1 Reply Last reply
        0
        • J Jorgen Andersson

          Bernhards solution is valid for SQLServer. But what if you don't use SQL Server?

          Wrong is evil and must be defeated. - Jeff Ello[^]

          L Offline
          L Offline
          Lost User
          wrote on last edited by
          #4

          If he is using HAL then he should have asked for HAL9000 compatible SQL :)

          Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^]

          J 1 Reply Last reply
          0
          • L Lost User

            If he is using HAL then he should have asked for HAL9000 compatible SQL :)

            Bastard Programmer from Hell :suss: If you can't read my code, try converting it here[^]

            J Offline
            J Offline
            Jorgen Andersson
            wrote on last edited by
            #5

            "I'm sorry, Eddy. I'm afraid I can't do that."

            Wrong is evil and must be defeated. - Jeff Ello[^]

            1 Reply Last reply
            0
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            • Login

            • Don't have an account? Register

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • World
            • Users
            • Groups