我有一个样品JSON数据,如:JQ阵列到新的领域
{
"phone_number": "780-414-2085",
"city": "Edmonton",
"updated": "2015-10-19T00:03:10",
"name": "Sir William Place ",
"url": "http://www.bwalk.com/en-CA/Rent/Details/Alberta/Edmonton/Sir-William-Place",
"last_visited": "2015-10-19T00:03:10",
"rooms": [{
"available": "Available",
"bathrooms": ["1"],
"suite_type": "1 Bedroom",
"square_feet": ["594", "649"],
"deposit": ["$499"],
"price_range": ["$1059", "$1209"]
}, {
"available": "Available",
"bathrooms": ["1"],
"suite_type": "1 Bedroom + Den",
"square_feet": ["771"],
"deposit": ["$499"],
"price_range": ["$1169", "$1249"]
}, {
"available": "Available",
"bathrooms": ["1", "2"],
"suite_type": "2 Bedroom",
"square_feet": ["894", "970"],
"deposit": ["$499"],
"price_range": ["$1344", "$1494"]
}, {
"available": "Available",
"bathrooms": ["2"],
"deal": ["October FREE and $299 Security Deposit on 12 month leases "],
"suite_type": "2 Bedroom Bi-level",
"square_feet": ["894"],
"deposit": ["$499"],
"price_range": ["$1344", "$1394"]
}, {
"available": "Waiting List",
"bathrooms": ["1"],
"suite_type": "Bachelor",
"square_feet": ["540"],
"deposit": ["$499"],
"price_range": ["$1004", "$1054"]
}],
"address": "8830-85 St., Edmonton, Alberta, T6C 3C3",
"zip_code": "T6C 3C3"
}
而且我运行JQ表达,如:
'{phone_number, city, updated, name, address, zip_code, url, last_visited} + (.rooms[] | {suite_type, price_range_start: .price_range[0], price_range_end: .price_range[1]} + {available, square_foot_start:.square_feet[0], square_foot_end:.square_feet[1], deposit:.deposit[0], bathrooms:.bathrooms[0]})'
这给了我一个确定的输出,但重复相同的名称因为我只列出房间数组。我希望能够将房间数组中的每个项目设置为诸如room1,room2,room3等之类的东西。但是也要将其保存在一个条目中,因此,例如,在此示例中,它将结束5个条目,因为有5个房间和例如名称重复5次,因为我现在设置的方式。我想我需要将房间映射到某些东西上,但不知道如何去做。
有人可以建议如何做到这一点?
我不确定我是否理解预期输出的内容以及它与您所得到的不同之处。你能提供一个你想要的输出样本吗? –
好的我在找什么,因为这将输出到csv到最后是采取房间数组,并为阵列中的每个项目,所以像room0/available,room0/bathrroms,room0/suite_type,room0/square_feet ,room0 /存款,room0/price_start,room0/price_end,room1/available,room1 /浴室等等,因此这将是标题,然后是每个值。希望这是有道理的。 – Tom
你可能会发现[这个答案](http://stackoverflow.com/a/33290267/3899165)有用。 –