>>SQL:
SELECT parent_id,group_concat(id) AS child_ids FROM orgunits WHERE parent_id IS NOT NULL AND deleted = 0 GROUP BY parent_id
>>结果集:
parent_id | child_ids
1 | 2,5,10,12,13,14,16,20,23,24,25,27,143,200,201,203,207,214,221,222
2 | 205
7 | 8,9,147
>>lua:
local res,_,_,_ = db:query(_sql)
>>打印结果集
[ { parent_id: 1 }, { parent_id: 2 }, { parent_id: 7 } ]
缺少“child_ids”。修改列名,group_concat修改为count等 都没有效果。
尝试以下面两种修改方式中的任何一个,结果就正确了:
1、将child_ids写在parent_id前面,结果正确。
2、在resty/mysql.lua中的_parse_row_data_packet方法内部任意一个地方加入print(1),结果也正确。但是在mysql.lua的其它需要调用的方法中添加就没有效果(如read_result),_parse_row_data_packet中加入local a = 1也没有效果。
在通过第二种方式测试期间,还有几种奇怪的现象:
1、返回的结果集中有一半正确,一半错误。
2、加入print测试正确后,发现lua程序的调用,前两次也不正确,到第三次就正确了。