如果您希望Oracle DB服务器将结果作为JSON返回,您可以执行以下查询 -
SELECT JSON_OBJECT ('1' VALUE col1, '2' VALUE col2, '3' VALUE col3) FROM table
您可以在SQL Developer中使用JSON格式“技巧”。
完整场景:
CREATE TABLE JSON_SO ( "1" INTEGER, "2" INTEGER, "3" INTEGER, "4" INTEGER, "5" INTEGER, "6" INTEGER ); INSERT INTO JSON_SO VALUES ( 40, 20, 22, 10, 0, 0 ); select /*json*/ * from json_so;
使用F5执行时的输出(Execute as Script):
{ "results":[ { "columns":[ { "name":"1", "type":"NUMBER" }, { "name":"2", "type":"NUMBER" }, { "name":"3", "type":"NUMBER" }, { "name":"4", "type":"NUMBER" }, { "name":"5", "type":"NUMBER" }, { "name":"6", "type":"NUMBER" } ], "items":[ { "1":40, "2":20, "3":22, "4":10, "5":0, "6":0 } ] } ] }
请注意,JSON输出通过SQL Developer在客户端发生(这也适用于SQLcl),我将JSON输出格式化为此处显示使用 https://jsonformatter.curiousconcept.com/
这适用于SQL Developer支持的任何版本的Oracle数据库,而 JSON_OBJECT() 函数是在Oracle Database 12cR2中引入的 - 如果您希望将DB格式的结果集设置为JSON。