允许对JSON数据进行类似SQL查询的Javascript库?

b_d*_*dev 33 javascript mysql sql jquery json

假设我们的JSON数据来自单个MySQL表:

someJSON =    [ { name: 'bill' , sex:'M', income:50000 },
                { name: 'sara' , sex:'F', income:100000 },
                 ...
               ];
Run Code Online (Sandbox Code Playgroud)

并说伪代码是:

"获取所有的所有的人对象sex:Fincome> 60000`".

是否有任何javascript库允许使用SQL或类似SQL的语法对此JSON数据进行此类查询编码.

如果你很好奇,有些背景:

我正在为我的组织制作数据分析Web服务的前端,而不知道未来的后端是什么.将来,他们会将数据从MS Access表迁移到某种MySQL类型的数据库.在那之前,我正在使用静态JSON文件来开始开发,并且认为将来我们的javascript查询显示为MySQL查询可能会对他们有所帮助.(当前的MS Access数据库无法从Web访问.)

Mik*_*nty 16

看看jslinq:

var myList = [
            {FirstName:"Chris",LastName:"Pearson"},
            {FirstName:"Kate",LastName:"Johnson"},
            {FirstName:"Josh",LastName:"Sutherland"},
            {FirstName:"John",LastName:"Ronald"},
            {FirstName:"Steve",LastName:"Pinkerton"}
            ];

var exampleArray = JSLINQ(myList)
                   .Where(function(item){ return item.FirstName == "Chris"; })
                   .OrderBy(function(item) { return item.FirstName; })
                   .Select(function(item){ return item.FirstName; });
Run Code Online (Sandbox Code Playgroud)


age*_*hun 10

你可以试试alasql.js.它是纯JavaScript客户端SQL服务器,您可以在其中对JSON对象执行查询.

   // Fill table with data
   var data = [ { name: 'bill' , sex:'M', income:50000 },
                { name: 'sara' , sex:'F', income:100000 }];

   // Do the query
   console.log(alasql("SELECT * FROM ? WHERE sex='F' AND income > 60000",[data]));
Run Code Online (Sandbox Code Playgroud)

小提琴中尝试这个


arp*_*rpo 9

我用Taffydb.TaffyDB是一个opensouce库,它将数据库功能引入JavaScript应用程序. http://taffydb.com/