我只需要选择记录日期的年份。
SELECT *, DATE_FORMAT('release','%Y') AS release_year FROM books
但不起作用。 phpmyadmin中的结果为NULL。
答案 0 :(得分:5)
SELECT *, YEAR(`release`) AS release_year FROM books
我认为release
是一个MySQL关键字。试着把它包裹在``
答案 1 :(得分:2)
不要将release
放在引号中。您试图从文字字符串'release'
中提取年份,而不是“release
”列中的值。
正如@invisal所说,RELEASE是reserved word in MySQL,所以你必须用反向标记来划分它。
答案 2 :(得分:1)
你的问题:
DATE_FORMAT('发布','%Y')
在Mysql中的是一个字符串。
修复:
SELECT *, DATE_FORMAT(`release`,'%Y') AS release_year FROM books;