Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Gibt es eine Möglichkeit, unterschiedliche Ergebnisse für dieselbe SQL-Abfrage zu erhalten, wenn die Daten gleich bleiben?

Ihre Verwendung von NOLOCK bedeutet, dass Sie schmutzige Lesevorgänge durchführen und nicht festgeschriebene Daten, Daten, die zurückgesetzt werden, vorübergehende und inkonsistente Daten usw. sehen werden

Nehmen Sie diese ab, versuchen Sie es erneut, melden Sie sich bitte zurück

Edit:einige Optionen mit NOLOCKS entfernt

  1. Daten ändern sich wirklich
  2. Einige Parameter oder Filter ändern sich (zB GETDATE)
  3. Einige Float-Vergleiche laufen jedes Mal auf verschiedenen Kernen
    Siehe dies auf dba.se https://dba.stackexchange.com/q/4810/630
  4. Eingebettete NOLOCKs in UDFs oder Views (zB iCentral.dbo.GetSubUserGroups)
  5. ...