Description
当条件为等于的时候自成的语句如下,应当生成那个月的,不应当所有的表都生成出来。
SELECT * from (SELECT t.* FROM (SELECT a."ID" as1, a."CREATED_BY" as2, a."CREATED_BY_NAME" as3, a."CREATED_TIME" as4, a."DATE" as5, a."ENTID" as6, a."OWNERID" as7, a."GOODSID" as8, a."PLACENUM" as9, b."PK" as10, b."ENTID" as11, b."GOODSID" as12, b."GOODSCODE" as13, b."GOODSNAME" as14, b."GOODSSPEC" as15, b."PLACE" as16, b."XYBM" as17, b."XYCJ" as18, b."MGOODCODE" as19
FROM "WORK_STORE_202205" a
INNER JOIN "VIW_GOODSDOC" b ON a."GOODSID" = b."GOODSID" AND a."ENTID" = b."ENTID"
WHERE (a."DATE" = to_timestamp('2022-05-14 00:00:00.000000','YYYY-MM-DD HH24:MI:SS.FF6'))
ORDER BY a."ID") t WHERE ROWNUM < 21) ftb
UNION ALL
SELECT * from (SELECT t.* FROM (SELECT a."ID" as1, a."CREATED_BY" as2, a."CREATED_BY_NAME" as3, a."CREATED_TIME" as4, a."DATE" as5, a."ENTID" as6, a."OWNERID" as7, a."GOODSID" as8, a."PLACENUM" as9, b."PK" as10, b."ENTID" as11, b."GOODSID" as12, b."GOODSCODE" as13, b."GOODSNAME" as14, b."GOODSSPEC" as15, b."PLACE" as16, b."XYBM" as17, b."XYCJ" as18, b."MGOODCODE" as19
FROM "WORK_STORE_202204" a
INNER JOIN "VIW_GOODSDOC" b ON a."GOODSID" = b."GOODSID" AND a."ENTID" = b."ENTID"
WHERE (a."DATE" = to_timestamp('2022-05-14 00:00:00.000000','YYYY-MM-DD HH24:MI:SS.FF6'))
ORDER BY a."ID") t WHERE ROWNUM < 21) ftb
UNION ALL
SELECT * from (SELECT t.* FROM (SELECT a."ID" as1, a."CREATED_BY" as2, a."CREATED_BY_NAME" as3, a."CREATED_TIME" as4, a."DATE" as5, a."ENTID" as6, a."OWNERID" as7, a."GOODSID" as8, a."PLACENUM" as9, b."PK" as10, b."ENTID" as11, b."GOODSID" as12, b."GOODSCODE" as13, b."GOODSNAME" as14, b."GOODSSPEC" as15, b."PLACE" as16, b."XYBM" as17, b."XYCJ" as18, b."MGOODCODE" as19
FROM "WORK_STORE_202203" a
INNER JOIN "VIW_GOODSDOC" b ON a."GOODSID" = b."GOODSID" AND a."ENTID" = b."ENTID"
WHERE (a."DATE" = to_timestamp('2022-05-14 00:00:00.000000','YYYY-MM-DD HH24:MI:SS.FF6'))
ORDER BY a."ID") t WHERE ROWNUM < 21) ftb
如果用 Between 则正常