Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Актуализирайте oldID за записите рекурсивно

Втори отговор:Можете да актуализирате колоната old_id със следния израз!

 Update #customer
 SET oldid =
        (Select TOP 1 c_old.id from #customer c_old
          where c_old.enddate <= #customer.startdate
          and c_old.cust_no = #customer.cust_no
          and c_old.meter_no = #customer.meter_no
          and c_old.enddate = 
                           (
                             SELECT max(c.enddate) FROM #customer c
                               where c_old.cust_no = c.cust_no
                               and c_old.meter_no = c.meter_no
                               and #customer.startdate >= c.enddate
                            ) 
          )
  from #customer
 go


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да използвате параметър OUTPUT в съхранена процедура

  2. Внедряване на SSIS:Dev Stage Live AppSettings

  3. Има ли начин да се извлече дефиницията на изглед от SQL Server с помощта на обикновен ADO?

  4. Получаване на брой от sql таблици

  5. Промяна на именувания екземпляр на SQL Server на екземпляр по подразбиране