Ich muss nur auf das Feld Month.Year from Date in SQL Server zugreifen.
quelle
Ich muss nur auf das Feld Month.Year from Date in SQL Server zugreifen.
Neben den bereits gegebenen Vorschlägen gibt es noch eine weitere Möglichkeit, die ich aus Ihrer Frage ableiten kann:
- Sie möchten immer noch, dass das Ergebnis ein Datum ist.
- Aber Sie möchten die Tage, Stunden usw. "verwerfen".
- Ein Jahr / Monat verlassen nur Datumsfeld
SELECT
DATEADD(MONTH, DATEDIFF(MONTH, 0, <dateField>), 0) AS [year_month_date_field]
FROM
<your_table>
Dadurch wird die Anzahl der ganzen Monate ab einem Basisdatum (0) ermittelt und zu diesem Basisdatum hinzugefügt. Runden Sie also auf den Monat ab, in dem das Datum liegt.
ANMERKUNG: In SQL Server 2008 ist die ZEIT weiterhin als 00: 00: 00.000 angehängt. Dies entspricht nicht genau dem "Entfernen" einer Notation von Tag und Uhrzeit insgesamt. Auch der Tag ist auf den ersten eingestellt. zB 2009-10-01 00: 00: 00.000
quelle
Vielleicht möchten Sie diese Website besuchen : http://anubhavg.wordpress.com/2009/06/11/how-to-format-datetime-date-in-sql-server-2005/
quelle
quelle
Die Ausgabe sieht folgendermaßen aus: 'Dezember 2013'
quelle
Es gibt zwei SQL-Funktionen, um dies zu tun:
Weitere Informationen finden Sie in der verknüpften Dokumentation.
quelle
Dies kann ebenfalls hilfreich sein.
oder
oder
quelle
Schreiben wir es so:
YEAR(anySqlDate)
undMONTH(anySqlDate)
. Versuchen Sie esYEAR(GETDATE())
zum Beispiel mit.quelle
quelle
Ich interpretiere Ihre Frage auf zwei Arten.
a) Sie brauchen Monat und Jahr nur getrennt. In diesem Fall ist hier die Antwort
b)
Sie möchten ab einem bestimmten Datum beispielsweise
'2009-11-24 09:01:55.483'
im Format MONTH.YEAR anzeigen . Die Ausgabe sollte also als kommen11.2009
in diesem Fall erfolgen.Wenn dies der Fall sein soll, versuchen Sie dies (unter anderem)
quelle
Einige der Datenbanken unterstützen die Funktionen möglicherweise nicht
MS ACCESS
oderRODBC
nichtSQL SERVER
, aber für jede Datenbank mit dieserFORMAT
Funktion können Sie einfach Folgendes tun:quelle
quelle
gibt Ihnen zB 201601, wenn Sie ein sechsstelliges Ergebnis wünschen
quelle
Versuche dies
z.B.
quelle
Versuche dies:
Portugiesisch
Ergebnis: maio 2019
Englisch
Ergebnis: Mai 2019
Wenn Sie in einer anderen Sprache möchten, ändern Sie " pt-pt " oder " en-US " in einen dieser Links
quelle
Ich hatte eine spezielle Anforderung, etwas Ähnliches zu tun, wo es Monat-Jahr anzeigt, was wie folgt getan werden kann:
SELECT DATENAME(month, GETDATE()) + '-' + CAST(YEAR(GETDATE()) AS nvarchar) AS 'Month-Year'
In meinem speziellen Fall musste ich es auf die dreistellige Monatsabkürzung mit einem zweistelligen Jahr reduzieren, die ungefähr so aussah:
SELECT LEFT(DATENAME(month, GETDATE()), 3) + '-' + CAST(RIGHT(YEAR(GETDATE()),2) AS nvarchar(2)) AS 'Month-Year'
quelle
Versuchen
SELECT CONCAT(month(datefield), '.', year(datefield)) FROM YOURTABLE;
quelle
Meine Datenbank unterstützt die meisten der oben genannten Funktionen nicht, ich habe jedoch festgestellt, dass dies funktioniert:
SELECT * FROM table WHERE SUBSTR(datetime_column, starting_position, number_of_strings)=required_year_and_month;
beispielsweise:
SELECT SUBSTR(created, 1,7) FROM table;
gibt das Jahr und den Monat im Format "JJJJ-MM" zurück
quelle
Holen Sie sich Monat und Jahr vom Datum
quelle
Ausgabe: März 2019
quelle
Abfrage: -
Select datename(m,GETDATE())+'-'+cast(datepart(yyyy,GETDATE()) as varchar) as FieldName
Ausgabe: - Januar 2019
allgemeines Datumsfeld, das wir verwenden können
quelle
Für Ergebnis: "JJJJ-MM"
quelle
Ich habe mein gewünschtes Ergebnis des Datums als 07. März 2018 formatiert
Meine Spalte 'transfer_date' ist eine Spalte vom Typ datetime und ich verwende SQL Server 2017 unter Azure
quelle
Wählen Sie CONCAT (MONTH (GETDATE ()), '.', YEAR (GETDATE ()).
Ausgabe: 5.2020
Wählen Sie CONCAT (DATENAME (MONTH, GETDATE ()), '.', YEAR (GETDATE ()).
Ausgabe: Mai 2020
quelle