2021-04-06升级:
--------------------------------
更新:format函数处理长度超过1K的串的时候可能会出现未处理完被截断的情况。
--------------------------------
差异对比:
测试案例:
endt := today();
begt := today()-20;
stocks :=
array("SH600000","SH600004","SH600006","SH600007","SH600008","SH600009","SH600010","SH600011","SH600012",
"SH600015","SH600016","SH600017","SH600018","SH600019","SH600020","SH600021","SH600022","SH600023","SH600025",
"SH600026","SH600027","SH600028","SH600029","SH600030","SH600031","SH600033","SH600035","SH600036","SH600037",
"SH600038","SH600039","SH600048","SH600050","SH600051","SH600052","SH600053","SH600054","SH600055","SH600056",
"SH600057","SH600058","SH600059","SH600060","SH600061","SH600062","SH600063","SH600064","SH600066","SH600067",
"SH600068","SH600070","SH600071","SH600072","SH600073","SH600075","SH600076","SH600077","SH600078","SH600079",
"SH600080","SH600081","SH600082","SH600083","SH600084","SH600085","SH600088","SH600089","SH600090","SH600091",
"SH600093","SH600094","SH600095","SH600096","SH600097","SH600098","SH600099","SH600100","SH600101","SH600103",
"SH600104","SH600105","SH600106","SH600107","SH600108","SH600109","SH600110","SH600111","SH600112","SH600113",
"SH600114","SH600115","SH6001161111111"
);
sql:=Format("SELECT ymd,stock_id,guzhi
FROM zblc_guzhi_reports
WHERE guzhi IS NOT NULL AND ymd <= %s AND ymd >= %s AND stock_id IN %s
ORDER BY ymd DESC",
inttostr(datetoint(endt)),inttostr(datetoint(begt)),'("'+array2str(stocks,'","')+'")');
return sql;
升级前:执行案例返回如下,结果返回不完整字符串
升级后:执行案例返回如下,结果返回完整字符串