2013-04-11 197 views
-8

我希望得到一个JSON像如下:我怎样才能得到一个JSON像这样用JavaScript

myJson = {"QC": ["city1","city2"], "NU": ["city3", "city4"], "FO": ["city5","city6"]}; 

我从数据库中获取数据,所有制结构喜欢如下:

id  province city 
    1  QC  city1 
    2  NU  city3 
    3  FO  city5 
    4  NU  city4 
    5  QC  city2 
    6  FO  city6 

坦克非常适用于这些行程

+1

您从数据库中获取数据作为多行记录字符串?你使用什么服务器端语言来与数据库接口?什么数据结构被用来存储输出?有太多缺失的信息来合理地回答这个问题。 – 2013-04-11 09:53:52

+2

你已经尝试过什么?堆栈溢出不是一个驱动代码生成器... – BenM 2013-04-11 09:53:58

+0

检查堆栈** cookbook **;) – 2013-04-11 09:53:59

回答

1

在行上循环。保持province为关键。在添加之前,检查密钥是否已经存在。如果已经存在,则添加到数组中。类似这样,

if(obj[key]){ 
    obj[key].push(city); 
}else{ 
    obj[key] = []; 
    obj[key].push(city); 
} 
+0

所以你假设OP使用Node.js?因为我怀疑他们可以从浏览器访问数据库。我只是觉得没有足够的信息来正确回答这个问题。 – 2013-04-11 09:59:52

+1

只是给伪代码。我不知道他在服务器端有什么语言。 – 2013-04-11 10:00:52

+0

嗨Subir Kumar骚,它的作品,非常感谢 – pconline2046 2013-04-11 10:04:50