Tag: "datum"

Der ultimative Guide für die Datetime Datentypen
Aug 19th
Original von Tibor Karaszi; deutsche Übersetzung von Frank Kalis
Überblick Zweck dieses Artikels ist es zu erklären, wie die Datetime Datentypen in SQL Server arbeiten; einschliesslich häufig auftretender Stolperfallen und allgemeinen Empfehlungen im… mehr »

Periodengerechte Abgrenzung durch GROUP BY
Aug 12th
Angenommen, wir haben die Aufgabe eine Urlaubsliste zu generieren, die zur Urlaubsplanung verwendet werden soll. Die Basistabelle ist recht einfach aufgebaut: mehr »

Ermittlung eines bestimmten Datums mit T-SQL
Dez 5th
Heute ist der 05.12.2007. Was muss ich nun machen, um den letzten Sonntag davor in T-SQL zu ermitteln?Ein Blick in den Kalendar zeigt, daß als Ergebnis der 02.12.2007 herauskommen muss. Die bisher einfachste und sicherste Methode, die ich gefunden habe… mehr »

Minuten in Stunden umwandeln
Jun 19th
DECLARE @seconds INT DECLARE @hours INT DECLARE @minutes INT -- SET @seconds = 3661 SET @hours = FLOOR(@seconds/(60*60)) SET @minutes = FLOOR((@seconds - (@hours*3600))/60) -- SELECT RIGHT('0' + CONVERT(VARCHAR(2), @hours), 2) + ':' + RIGHT('0' +… mehr »

Datumsarithmetik
Aug 3rd
Da sitzt man abends völlig entspannt am Schreibtisch, blättert in alten Unterlagen aus der Studienzeit weil man sich an gewisse mathematische Zusammenhänge nicht mehr so direkt aus dem Kopf erinnern kann, und - zack - stolpert man über Integer… mehr »

Auf volle Stunden skalieren
Jul 29th
Die Anforderung, Auswertungen zu erstellen, die die Daten auf stündlicher Basis aufbereiten und auswerten, findet sich in vielen Bereichen. Zum Beispiel, Anzahl der Telefonate pro Mitarbeiter pro Stunde, Durchschnittswerte irgendwelcher Meßwerte pro… mehr »

Integer in Datum umwandeln
Jun 24th
Angenommen man hat Integer Daten in der Form 20050623 vorliegen, die ein Datum repräsentieren sollen und deshalb in einen DateTime Wert konvertiert werden sollen. Wie schön einfach wäre es nun, wenn eine direkte Konvertierung funktionieren würde:… mehr »

Schaltjahre
Mär 21st
Vorweggeschickt mag man durchaus darüber diskutieren, ob eine eigene Funktion zur Ermittlung eines Schaltjahres im SQL Server zwingend notwendig ist, da die meisten Client Sprachen bereits mit ausgefeilten hochoptimierten Datumsbibliotheken ausgestattet… mehr »

Wir basteln uns ein Datum
Feb 12th
Was tun, wenn man den Tag, den Monat und das Jahr fein säuberlich in Einzelteilen zerlegt hat? Schauen wir uns mal verschiedene Methoden an, daraus ein gültiges Datum herzustellen. mehr »

Tage eines Monats Teil 2
Jul 19th
Dieser Beitrag zeigte, wie man mit Integer Operationen die Anzahl der Tage eines Monats ermitteln kann. SQL Server MVP Steve Kass hat den folgenden Trick in den englischen Newsgroups gepostet: mehr »

Das Alter einer Person
Jul 13th
In Ergänzung zu diesem Beitrag kann man auch folgende Alternativen zur Bestimmung des Alters einer Person verwenden: mehr »

Zeitwerte addieren
Jul 13th
SET NOCOUNT ON
CREATE TABLE #temp_table
(
hm VARCHAR(5)
)
INSERT #temp_table VALUES('8:30')
INSERT #temp_table VALUES('5:01')
INSERT #temp_table VALUES('12:59')
INSERT #temp_table VALUES('7:20')
SET NOCOUNT OFF
SELECT
CONVERT(VARCHAR,… mehr »

Integer in Zeit umwandeln
Jul 13th
DECLARE @time INT SET @time = 7382 SELECT @time / 3600 AS Stunden , (@time / 60)% 60 AS Minuten , @time % 60 AS Sekunden Stunden Minuten Sekunden ----------- ----------- ----------- 2 3 2 (1 row(s)… mehr »

Datum aus einer DATETIME Spalte entfernen
Jul 13th
SELECT RIGHT(STUFF(CONVERT(CHAR(22),GETDATE(),13),21,4,' '),9)
---------
10:14:40
(1 row(s) affected)
--Oder
SELECT CONVERT(CHAR(8), GETDATE(), 8)
--------
10:14:40
(1 row(s) affected)
--Oder
SELECT CONVERT(CHAR(8),… mehr »

Summe pro Woche anzeigen
Jul 13th
USE Northwind
GO
SELECT
n.dow
, ISNULL(SUM(o.Freight),0)
FROM Orders o
RIGHT JOIN
(SELECT 1
dow
UNION ALL SELECT 2
UNION ALL SELECT 3
UNION ALL SELECT 4
UNION ALL SELECT 5
UNION ALL SELECT 6… mehr »

Nachtrag zum Datetime Datentypen
Jul 13th
Die anderen 4 Byte speichern die Tageszeit, die als Anzahl der Millisekunden seit Mitternacht dargestellt wird.Dies kann man in der Januar 2004 Edition von BOL nachlesen.Gibt man z.B. den Wert 300 in die zweiten 4-bytes eines Datetimes ein, erhält man a… mehr »

Der DATETIME Datentyp
Jul 13th
Der DATETIME Datentyp ist 8 Bytes gross. Die ersten vier Bytes speichern die Anzahl der Tage vor oder nach dem 01.01.1900; die letzten vier Bytes speichern die Anzahl der 'Clock Ticks' seit Mitternacht. Die binäre Darstellung jedes der beiden 4-byte Stüc… mehr »

Konvertierung aus Julianischem Kalender
Jul 13th
DECLARE @yr INT DECLARE @jd INT SELECT @yr = 2002, @jd = 245 SELECT DATEADD(yyyy, @yr - 1900, -1) + @jd AS Julian_Date Julian_Date ------------------------------------------------------ 2002-09-02… mehr »

Sekunden in Minuten umwandeln
Jul 13th
DECLARE @sekunden INT SET @sekunden = 61 SELECT CONVERT(VARCHAR(2), FLOOR(@sekunden/60)) + ':' + RIGHT('0' + CONVERT(VARCHAR(2), (@sekunden%60)), 2) ----- 1:01 (1 row(s) affected) mehr »

DATETIME Spalten gruppieren und sortieren
Jul 13th
SELECT
DATEADD(day, 0 , DATEDIFF(day, 0, MsgDateReceived)) AS "Datum"
, COUNT(*) AS Anzahl
FROM mails_header
GROUP BY
DATEADD(day, 0 , DATEDIFF(day, 0, MsgDateReceived))
ORDER BY
"Datum" DESC mehr »

GETDATE() und Julianisches Datum
Jul 13th
SELECT
YEAR(GETDATE())*1000
+
DATEPART(y,GETDATE()) AS the_date
the_date
-----------
2004182
(1 row(s) affected)
Danke an Jonathan van Houtte! mehr »

Das Alter einer Person
Jul 13th
DECLARE @d DATETIME
SET @d = '23.07.1968'
SELECT
DATEDIFF(yyyy,CAST(@d AS DATETIME),GETDATE())
-
(CASE WHEN DATEADD(yyyy,DATEDIFF(yyyy,CAST(@d AS DATETIME),GETDATE()),CAST(@d AS DATETIME)) >
GETDATE() THEN 1 ELSE 0 END)… mehr »

Datum in das Format JJJJMMDDHHMMSS bringen
Jul 13th
Eigentlich würde man so eine Aufgabe wahrscheinlich besser im Client code verarbeiten, aber wenn's denn unbedingt der Server sein soll, könnte dies folgendermaßen aussehen:
DECLARE @date DATETIME SET @date = '19.10.2003 09:48:22' SELECT CAST(… mehr »

Monatsultimo ermitteln
Jul 13th
Die Ermittlung bestimmter Tage taucht in dieser oder jener Form immer mal wieder auf. T-SQL bietet hierfür sehr wirkungsvolle Methoden an:SELECT DATEADD(DAY, -DAY(GETDATE()), CAST(CONVERT(CHAR(8), GETDATE(), 112) AS DATETIME)) AS MonatsultimoMonats… mehr »

Erster und letzter Tag eines Jahres
Jul 13th
DECLARE @dt DATETIME SET @dt = GETDATE() SELECT CAST(CAST(YEAR(@dt) AS CHAR(4))+'0101' AS DATETIME) AS Jahresanfang , CAST(CAST(YEAR(@dt) AS CHAR(4))+'-12-31T23:59:59.997' AS DATETIME) AS Jahresende Jahresanfang… mehr »
