Ich habe ein Problem, das Jahr aus einem mysql Timestamp-Feld zu extrahieren. Ich konnte es mit einem Datetime-Feld erhalten arbeitet mit dieser Methode:Holen Sie sich das Jahr aus Timestamp sql
SELECT id FROM TABLE WHERE YEAR(creation_date) = 2010
CREATE TABLE IF NOT EXISTS `pub_media` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`parent_id` int(11) DEFAULT NULL,
`title` text,
`filename` text,
`path` text,
`serv_path` text,
`type` enum('images','videos','files','audio','gallery') DEFAULT NULL,
`keywords` text,
`label_id` int(11) DEFAULT NULL,
`creation_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`update_date` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' ON UPDATE CURRENT_TIMESTAMP,
`rank` int(11) NOT NULL DEFAULT '0',
`deleted` tinyint(1) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
Server-Version: 5.1.41 Gibt es einen simalar Weg, um diese Aktion auf einem Zeitstempel-Feld durchführen? Ich möchte diese Aktion in meiner SQL-Anweisung beibehalten und nicht versuchen, sie nach Möglichkeit in PHP oder eine andere Skriptsprache zu verschieben.
heck nein, ich weiß nicht, warum es nicht funktioniert auf meiner DB. Vielleicht weil ich MyISAM anstelle von InnoDB als DB Engine verwende? –
Ich habe es gerade mit MyISAM versucht, und das funktioniert auch. Können Sie Ihre Frage bearbeiten und die Ausgabe von 'CREATE TABLE
hinzugefügt beide Anfragen –
Verwendung
CAST
Funktion :)SELECT id FROM TABLE WHERE YEAR(CAST(creation_date AS DATE))=2010
sollte mit creation_date Zeitstempel arbeiten
[[bearbeiten]], hinzugefügt() umgossen
Quelle
2010-07-05 14:10:25 dweeves
I bekomme diesen Fehler: Sie haben einen Fehler in Ihrer SQL-Syntax; Überprüfen Sie das Handbuch, das Ihrer MySQL-Serverversion entspricht, für die richtige Syntax in der Nähe von 'creation_date AS DATE' = 2010 AND deleted = 0 ORDER BY rank DESC 'bei Zeile 1 SELECT ID, Titel FROM pub_media WHERE YEAR (CAST creation_date AS DATE) = 2010 UND gelöscht = 0 ORDER BY rank DESC mysql v. 5.1.41 –
hey ihr Jungs, das funktioniert nicht, hör auf, es aufzuziehen :) –
hinzugefügt vergessen() auf CAST – dweeves
Folgende Arbeiten ok,
die Formatierung der Daten ist für Anfragen wie diese wirklich nützlich, habe ich es mehrfach verwendet Zum Beispiel, um Daten in 10-Minuten-Intervallen zu zerlegen ...
Quelle
2010-07-05 14:39:42
als jemand sollte eine Geschwindigkeitstest auf was ist am schnellsten, mit DATE_FORMAT oder TYPE Besetzung ..: p –
In meinem Fall hat cast() nicht funktioniert. from_unitime() tat das aber. Die Abfrage wäre die folgende:
Quelle
2014-10-02 17:13:26 Juampy
Quelle
2016-09-06 10:56:25 Mahesh
Diese Antwort wurde in der niedrigen Qualität Überprüfung Warteschlange, vermutlich, weil Sie keine Erklärung des Codes zur Verfügung stellen. Wenn dieser Code die Frage beantwortet, sollten Sie in Erwägung ziehen, etwas Text hinzuzufügen, der den Code in Ihrer Antwort erklärt. Auf diese Weise erhalten Sie mit höherer Wahrscheinlichkeit mehr Upvotes - und helfen dem Fragesteller, etwas Neues zu lernen. – lmo
Extract Jahr ab dem Datum oder Zeitstempel in tragbarer Weise:
Arbeiten mit MySQL, PostgreSQL, Oracle ...
Quelle
2016-11-01 13:01:55 user11153
Verwandte Themen