繁体   English   中英

选择列值相差两年以上的行

[英]select rows where column values differ by more than two years

所以我的桌子有这样的记录

ID    PRODUCT      MAKE_DATE       ORDER_DATE
1       aaaa       2010-11-04      2051-12-11 16:13:43
2       bbb        2011-10-05      2010-11-11 00:00:00
3       cccc       2010-05-20      0000-00-00 00:00:00

我的问题:如何在make_dateorder_date不同的情况下显示那些结果2年?

IM卡在此:

Select ID, Product, make_date, order_datetime
FROM `tbl_order`
WHERE make_date ??? order_datetime

结果应该是:

1       aaaa       2010-11-04      2051-12-11 16:13:43
3       cccc       2010-05-20      0000-00-00 00:00:00
Select ID, Product, make_date, order_datetime
FROM tbl_order
WHERE make_date < order_datetime - INTERVAL 2 YEAR 
   OR make_date > order_datetime + INTERVAL 2 YEAR ;

对于MySQL使用TIMESTAMPADD函数:

SELECT ID, Product, make_date, order_datetime
FROM `tbl_order`
WHERE make_date > TIMESTAMPADD(YEAR, 2, order_datetime)
OR make_date < TIMESTAMPADD(YEAR, -2, order_datetime)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM