MySQL SYSDATE()
функцията връща текущата дата и час. Стойността се връща в „ГГГГ-ММ-ДД ЧЧ:ММ:СС“ или ГГГГММДДХММСС формат, в зависимост от това дали функцията се използва в низов или числов контекст.
Тази функция е подобна на NOW()
но с тънка разлика. SYSDATE()
връща времето, в което се изпълнява. NOW()
връща момента, в който операторът е започнал да се изпълнява.
Синтаксис
Синтаксисът е така:
SYSDATE([fsp])
Където (по избор) fsp
Аргументът указва точността на частични секунди за връщаната стойност.
Пример
Ето пример за демонстрация.
SELECT SYSDATE();
Резултат:
+---------------------+ | SYSDATE() | +---------------------+ | 2018-06-23 11:36:52 | +---------------------+
Дробна точност на секундите
Ето пример за използване на fsp
аргумент за уточняване на точността на дробни секунди за връщаната стойност.
SELECT SYSDATE(6);
Резултат:
+----------------------------+ | SYSDATE(6) | +----------------------------+ | 2018-06-23 11:37:05.515928 | +----------------------------+
Числов контекст
Ето пример за използване на SYSDATE()
функция в числов контекст.
SELECT SYSDATE() + 0;
Резултат:
+----------------+ | SYSDATE() + 0 | +----------------+ | 20180623113717 | +----------------+
Можете също да използвате ненулева стойност, за да добавите или извадете от върнатата стойност.
SYSDATE() срещу NOW()
Както споменахме, SYSDATE()
и NOW()
направи почти същото нещо, но с малка разлика. SYSDATE()
връща времето, в което се изпълнява. NOW()
функцията, от друга страна, връща постоянно време, което показва момента, в който операторът е започнал да се изпълнява.
За пример вижте SYSDATE()
срещу NOW()
в MySQL:Каква е разликата?