从JSON_TABLE中进行选择,其中JSON是一个平面数组



如何从JSON_TABLE中选择JSON是平面数组?

以下是SQL,它在dataflat列中构建了一个包含一些JSON文本的表:

create table mytest (id int, data varchar(3276),
flat  varchar(3000)                      
)                                          
insert into mytest values(1, '{"a":[1,2,3]}', '[8,9,10]')

JSON_TABLE从包含JSON对象的列返回数组中的项:

select m.id, jt.*                                    
from mytest m, JSON_TABLE(m.data, '$.a[*]' COLUMNS ( 
val int    path '$'                        
)) jt                                             

但是,当我对包含JSON平面数组的列运行类似的查询时,我没有得到任何行:

select m.id, jt.*                                    
from mytest m, JSON_TABLE(m.flat, '$.[*]' COLUMNS (  
val int    path '$'                        
)) jt                                             

删除路径上的.。。。是'$[*]'而不是'$.[*]'

select m.id, jt.*                                    
from mytest m, JSON_TABLE(m.flat, '$[*]' COLUMNS (  
val int    path '$'                        
)) jt 

相关内容

  • 没有找到相关文章

最新更新