sql >> Database >  >> RDS >> Mysql

MySQL naar Oracle syntaxisfout (limiet / offset / update)

Het lijkt erop dat de parser dat niet leuk vindt, ondanks het feit dat het sintactisch correct is. Waarschijnlijk verblindt de twee overlappende en geordende clausule hem op de een of andere manier. Ik heb dat gereproduceerd.

U kunt een analytische functie gebruiken:

update table1 alf
 set nextcontractid = 
     (SELECT min(contractid) keep (dense_rank first order by lasttradedate asc) 
     FROM table1copy alf2
     WHERE alf2.assetid     = alf.assetid
     AND alf2.lasttradedate > alf.lasttradedate
     )
 where alf.complete = 0


  1. psycopg2 voegt eigenlijk geen gegevens in

  2. PostgreSQL accepteert geen kolomalias in WHERE-clausule

  3. PHP:Tabelgegevens weergeven met fetchall()

  4. Verbinding maken met mysql vanuit C# via SSH