Blog: SQL

Dapper und AT TIME ZONE (T-SQL)

Der SQL Server bietet seit der 2016er Version eine Funktion an um ein Datum direkt in eine andere Zeitzone zu konvertieren. Leider liefert diese einen "datetimeoffset" statt einen datetime zurück, so dass Dapper die Rückgabe nicht automatisch konvertieren kann. Wenn es nicht möglich ist, den Datentyp in C# zu ändern, hilft hier momentan nur das ganze in einen String zu konvertieren und das zusätzliche Leerzeichen vor dem "+" oder "-" Symbol zu entfernen.

SELECT REPLACE(REPLACE(GETUTCDATE() AT TIME ZONE 'Central European Standard Time', ' +', '+'), ' -', '-');

SQL Server: Anzahl der Rows aller Tabellen

Oft benötigt man die gesamte Anzahl an Rows einer Tabelle. Wenn diese sehr Groß ist, kann ein SELECT COUNT(*) problematisch werden. Zum einen dauert dieser dann sehr lang und erzeugt auch eine gewisse Last auf dem Server. Als Alternative bietet sich hier die dynamische View „sys.dm_db_partition_stats“ des SQL Servers an, welche diese Information bereithält.

Lies mehr…