注册

dm7查询报错时间格式掩码错误,但实际并没有错误,是数据库本身处理能力不足吗?

dsdddfffss 2022/05/23 1252 16

sql如下:

经过测试,DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’) >= ‘20130101’
AND DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’) <= ‘20130106’
这两个条件里,任意去掉其中一个就可以查询,但是理论上这个sql是没有语法错误的,而且一定不是时间格式掩码错误,是不是达梦数据源本身不支持条件过多的嵌套查询?一旦条件多了就会解析失败?

SELECT
A12_T_1_.ORDER_LEVEL AS T_AE1_3_,
concat(A12_T_1_.PRODUCT_TYPE, AAT_T_2_.PRODUCT_TYPE) AS T_A88_4_,
DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’) AS T_AB4_5_,
SUM(A12_T_1_.ORDER_NUMBER) AS T_AE2_6_
FROM
(
SELECT
*
FROM
COMMON_TEST_DATA
) AS A12_T_1_
LEFT JOIN DW.COMMON_TEST_DATA AS AAT_T_2_ ON A12_T_1_.ORDER_ID = AAT_T_2_.ORDER_ID
WHERE
A12_T_1_.ORDER_LEVEL = ‘中级’
AND (
(
DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’) IN (‘20130104’, ‘20130105’)
)
OR (
DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’) >= ‘20130101’
AND DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’) <= ‘20130106’
)
)
GROUP BY
A12_T_1_.ORDER_LEVEL,
concat(A12_T_1_.PRODUCT_TYPE, AAT_T_2_.PRODUCT_TYPE),
DATE_FORMAT(A12_T_1_.REPORT_DATE, ‘YYYYMMDD’)
ORDER BY
T_AE1_3_ ASC,
T_A88_4_ ASC,
T_AB4_5_ ASC
LIMIT
0, 30000

回答 0
暂无回答
扫一扫
联系客服