SPLWare / esProc

esProc SPL is a scripting language for data processing, with well-designed rich library functions and powerful syntax, which can be executed in a Java program through JDBC interface and computing independently.
http://doc.scudata.com/esproc/
Apache License 2.0
4.54k stars 323 forks source link

本地JSON文件,select字段错位问题 #3

Open onekilogram opened 2 years ago

onekilogram commented 2 years ago

你好,今天简单运行了个demo测试,我是从本地JSON文件读取的JSON数组,select 某个指定的列发现数据错位了

1-数据JSON: [ { "TYPE":"Y", "INDEX_NAME":"测试1" }, { "TYPE":"N", "INDEX_NAME":"测试2" } ]

2-执行SQL: ResultSet rst = st.executeQuery("$() select INDEX_NAME from /Users/kilogram/Desktop/spl.json");

3-结果截图

INDEX_NAME Y N

xjl002 commented 2 years ago

已修改正确。

onekilogram commented 2 years ago

我验证了下,和之前一样错位的,你这边是正常的么?

xjl002 commented 2 years ago

之前我测试 select ... 也发生了列名混淆问题,第一次只修复好了 select 。 现在 select INDEX_NAME...也好了

onekilogram commented 2 years ago

thx,我看OK了。 我这个是对JSON的文件的操作,再问一下有直接对内存数组,或者JSONString串,或者ResultSet 再进行操作的demo么?

onekilogram commented 2 years ago

thx,我看OK了。 我这个是对JSON的文件的操作,再问一下有直接对内存数组,或者JSONString串,或者ResultSet 再进行操作的demo么?

xjl002 commented 2 years ago

http://d.raqsoft.com.cn:6999/esproc/tutorial/bjavady.html 这里有一些被java调用的文档。直接处理json串,或更多计算,应该是封装到一个SPL脚本里,如my.splx,然后通过jdbc再调用它: st =con.prepareCall("call my(arguments...)");

SPL脚本里有json函数做json串与序表对象转换,json(jsonString/序表对象),针对序表的操作就丰富了。