SQL没有这样的函数YEAR

Tad*_*dey 3 sql date

有 2 个表 CUSTOMERS(ID, FIRSTNAME, LASTNAME, ADDRESS);订单(ID、产品名称、产品价格、日期订单、ID_CUSTOMER、金额);任务是显示 2015 年之前发出的所有订单(所有字段)并按 ID 对数据进行排序。这是我的代码:

SELECT * FROM ORDERS
WHERE YEAR(DATE_ORDER) < 2015
ORDER BY ID
Run Code Online (Sandbox Code Playgroud)

执行时出错:没有这样的函数 YEAR 我尝试这样做:

SELECT * FROM ORDERS
WHERE strfttime('%Y', DATE_ORDER) < 2015
ORDER BY ID
Run Code Online (Sandbox Code Playgroud)

仍然不起作用

Gor*_*off 5

我建议您使用日期逻辑编写代码:

where date_order < date('2015-01-01') -> "I tried this one and it worked" - author of the post
Run Code Online (Sandbox Code Playgroud)

标准 SQL 使用以下函数extract()

where extract(year from date_order) < 2015
Run Code Online (Sandbox Code Playgroud)

但是,两者的确切语法取决于您使用的数据库。