Имам таблица, наречена „продукти“ с няколко колони. Една от тях се нарича „дата“ и трябва да съдържа датата, на която продуктът е добавен като времево клеймо на Unix. Обикновено бих използвал функцията NOW(), но тъй като стойността трябва да е цяло число и не мога да преобразувам функцията NOW() като цяло число, трябва да намеря друг начин. Някакви идеи ?
MySQL - Как да вмъкна текущата дата като времево клеймо на Unix?
Отговори (2)
MySQL има функция с изненадващо име unix_timestamp
:
INSERT INTO `products`
(`name`, `date`)
VALUES ('some name', UNIX_TIMESTAMP())
person
Mureinik
schedule
14.10.2015
Променете колоната да бъде от тип TIMESTAMP
и задайте нейната стойност по подразбиране (ако искате да зададете колоната на датата, на която е добавена) на CURRENT_TIMESTAMP
.
ALTER TABLE `products` MODIFY `date` TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL;
TIMESTAMP не е низ, а цяло число времево клеймо, то просто се показва като низ и можете да използвате оператори върху него.
С DEFAULT CURRENT_TIMESTAMP
не е необходимо да вмъквате датата, mysql ще го направи вместо вас.
person
x13
schedule
14.10.2015