楼主没有详细的说明 使用的是什么数据库.
那我只有慢慢解释了:
第一步,首先要把那个 字符类型的数据, 转换为日期类型:
Oracle 使用
TO_DATE(YXQX, 'YYYYMMDD')
SQL SERVER 使用
CONVERT(datetime, YXQX, 112)
MYSQL 使用
STR_TO_DATE(YXQX, '%Y%m%d')
第二步,如何表示出半年内将要到期的商品。
也就是 这个 转换后的日期, 要大于今天, 小于半年后
需要使用2个函数, 一个是今天, 一个是 半年后(也就是 6个月以后)
今天的函数:
Oracle 使用
SYSDATE
SQL Server 使用
GETDATE()
MySQL 使用
CURRENT_DATE()
今天+6个月的 操作
Oracle 使用
ADD_MONTHS(sysdate, 6)
SQL Server 使用
DATEADD(mm, 6, GETDATE() )
MySQL 使用
DATE_ADD( CURRENT_DATE(), INTERVAL 6 MONTH)
最后的写法就是:
Oracle:
TO_DATE(YXQX, 'YYYYMMDD') > SYSDATE
AND TO_DATE(YXQX, 'YYYYMMDD') < ADD_MONTHS(sysdate, 6)
SQL SERVER
CONVERT(datetime, YXQX, 112) > GETDATE()
AND CONVERT(datetime, YXQX, 112) < DATEADD(mm, 6, GETDATE() )
MYSQL
STR_TO_DATE(YXQX, '%Y%m%d') > CURRENT_DATE()
AND STR_TO_DATE(YXQX, '%Y%m%d') < DATE_ADD( CURRENT_DATE(), INTERVAL 6 MONTH)
温馨提示:答案为网友推荐,仅供参考