sql >> Database teknologi >  >> RDS >> Sqlserver

Find sidst indsatte post MS SQL SERVER

I henhold til kommentaranmodning her en hurtig og beskidt manuel løsning, forudsat at du har listen over INSERT sætninger (eller de tilsvarende data) i samme rækkefølge som den udstedte INSERT s. For dette eksempel antager jeg 1 million poster.

INSERT ... VALUES (1, ...)
...
INSERT ... VALUES (250000, ...)
...
INSERT ... VALUES (500000, ...)
...
INSERT ... VALUES (750000, ...)
...
INSERT ... VALUES (1000000, ...)

Du skal bare finde den sidste PK, der er indsat. Heldigvis er der en i dette tilfælde. Så du begynder at lave en manuel binær søgning i tabellen, der udsteder

SELECT pk FROM myTable WHERE pk = 500000

Hvis du får en række tilbage, ved du, at det er nået så langt. Fortsæt med at tjekke med pk = 750000 . Så igen, hvis det er der med pk = 875000 . Hvis 750000 ikke er der, så INSERT s må være stoppet tidligere. Tjek derefter efter pk = 675000 . Denne proces stopper i dette tilfælde efter 20 trin.

Det er bare manuel opdeling og hersk.



  1. Migrer fra MySQL til PostgreSQL på Linux (Kubuntu)

  2. søgning efter et hvilket som helst ord ved hjælp af LIKE %

  3. Vælg mellem mange-til-mange forhold efterfølger

  4. Klikbare HTML-tabelrækker, der POST til et PHP-popup-vindue