Voor een applicatie (dat ik overigens schrijf in C#), moet ik via een ODBC connectie een aantal zaken uitlezen uit een SQL2000 database. Het idee is, dat ik records uit de SQL database lees welke ik in een andere database terugplaats. Als dat gelukt is, schrijf ik een nieuwe status weg naar de SQL database.
Echter, vanwege performance hebben we gekozen om er een service van te maken, die (bijvoorbeeld) 1x per minuut, 10 records overhevelt. Zodra echter de 10 records alle 10 niet toegevoegd kunnen worden, krijgen deze 10 dus ook geen nieuwe status en is het gevolg dus, dat deze 10 elke keer terugkomen in mijn select query en dus elke keer weer falen.
Mijn huidige query is ongeveer zo (even uit mijn hoofd):
Wat ik eigenlijk zou willen, is dat ik uit de database 10 random records kan ophalen. Zodat als er 10 stuks gefaald zijn, hij toch lekker door kan draaien.
Ik kan wel random volgordes gebruiken door te sorteren op NEWID(), maar dan sorteert hij binnen dezelfde 10.
Wie heeft er een idee ?
Echter, vanwege performance hebben we gekozen om er een service van te maken, die (bijvoorbeeld) 1x per minuut, 10 records overhevelt. Zodra echter de 10 records alle 10 niet toegevoegd kunnen worden, krijgen deze 10 dus ook geen nieuwe status en is het gevolg dus, dat deze 10 elke keer terugkomen in mijn select query en dus elke keer weer falen.
Mijn huidige query is ongeveer zo (even uit mijn hoofd):
SQL:
1
2
| select top 10 * from tabel where status is not null and status <> '70' |
Wat ik eigenlijk zou willen, is dat ik uit de database 10 random records kan ophalen. Zodat als er 10 stuks gefaald zijn, hij toch lekker door kan draaien.
Ik kan wel random volgordes gebruiken door te sorteren op NEWID(), maar dan sorteert hij binnen dezelfde 10.
Wie heeft er een idee ?