-1

我正在做家庭作业,直到我到了这一点,一切都很好。我的教授希望我只提取三月、四月和五月的日期,而不使用 BETWEEN 运算符。

注意:我没有收到任何错误。我正在使用 EDUPE,它运行 MySQL,但有一些小的差异,有些东西根本不起作用。

问题是,有没有办法让我的代码正常运行?还是我走错了方向?

/*Exercise Six*/
SELECT order_id as "Order ID", DATE_FORMAT(order_date, '%M-%d-%Y') as "Order Date"
FROM orders
WHERE order_date IN ('March%', 'April%', 'May%')
ORDER BY order_date ASC;
4

2 回答 2

1

你可以再试date_format一次:

WHERE DATE_FORMAT(order_date, '%M') IN ('March', 'April', 'May')

或者只是monthname()

WHERE MONTHNAME(order_date) IN ('March', 'April', 'May')
于 2016-03-23T00:37:29.653 回答
0

我不确定这是否是最有效的方法,但您可以使用“联合”来做到这一点:

select order_ID, order_date from orders
where order_date Like '%Mar%'
union
select order_ID, order_date from orders
where order_date Like '%Apr%'
union
select order_ID, order_date from orders
where order_date Like '%May%'

编辑:我更喜欢 Otashin 的回答。

于 2016-03-23T00:42:01.717 回答