sql >> Databasteknik >  >> RDS >> Mysql

LIMIT / OFFSET i Oracle 11G

Borttaget originalsvar, inte genomförbart

Jag tycker att detta borde vara genomförbart i en enda SQL-sats, men hittills har kombinationen av behovet av en korrelerad underfråga och behovet av någon form av analytisk funktion gjort att allt jag försökte misslyckades.

Här är en procedurmetod som jag tror kommer att göra vad du vill:

DECLARE
  CURSOR t IS
  SELECT LEAD(contractid,4) OVER (PARTITION BY assetid ORDER BY lasttradedate ASC) lead_contractid
    FROM table1
    FOR UPDATE;
BEGIN
  FOR r IN t LOOP
     UPDATE table1 SET nextcontractid = r.lead_contractid
       WHERE CURRENT OF t;
  END LOOP;
END;



  1. Hur du verifierar dina MySQL-säkerhetskopier med ClusterControl

  2. Hur man gör en databas online från återställningsläge i SQL Server

  3. uppdatering av rader istället för att skapa nya poster databas android

  4. Infoga och hämta bilder i mysql genom python