Für eine where
Klausel, wenn ich eine %h:%i
Zeichenfolge habe, wie kann ich die letzte vorhandene datetime
vor now()
mit dieser Stunde/Minute-Kombination erhalten?MySQL erhalten Datum von Stunde: Minute Format
Einige fiktive select
das gewünschte Verhalten zu zeigen (comb
ist die magische Funktion/combinator ich brauche, die sich explizit auf now()
oder nicht abhängen können):
mysql> select now(), comb('20:20');
+---------------------+---------------------+
| now() | comb('20:20') |
+---------------------+---------------------+
| 2016-11-12 20:43:39 | 2016-11-12 20:20:00 |
+---------------------+---------------------+
mysql> select now(), comb('20:20');
+---------------------+---------------------+
| now() | comb('20:20') |
+---------------------+---------------------+
| 2016-11-11 01:43:39 | 2016-11-10 20:20:00 |
+---------------------+---------------------+
mysql> select now(), comb('20:20');
+---------------------+---------------------+
| now() | comb('20:20') |
+---------------------+---------------------+
| 2016-01-01 01:43:39 | 2015-12-31 20:20:00 |
+---------------------+---------------------+
Sie meinen zuletzt in "real life" oder in einer Tabelle mit anderen Bedingungen in der where-clase? – maraca
Im "wirklichen Leben". Das letzte phische Datumsmoment, das dieser Stunde entspricht: Sekunden Kombination. –
@maraca Es ist für eine select-Anweisung mit anderen where-Bedingungen, aber mein 'comb' soll in einer 'between'-Anweisung verwendet werden:' where ... und event_time zwischen comb (hour_min_str) und now() '. –