如何在列名称包含空格时使用SQL查询Javascript对象?

时间:2015-11-06 06:27:36

标签: javascript mysql sql-server

我想使用SQL查询javascript数组对象(对数据执行分组)。

var data = [{ dep: 'A', qt: 10, price: 5},
 { dep: 'A', qt: 5,  price: 2.30 },
 { dep: 'B', qt: 3,  price: 2.20 },
 { dep: 'C', qt: 1,  price: 4 },
 { dep: 'C', qt: 4,  price: 10 }];

var res = alasql('SELECT dep, SUM(qt) AS qt, SUM(qt*price) AS amt, AGGR(amt/qt) AS price FROM ? GROUP BY dep',[data]);



document.getElementById("res").textContent = JSON.stringify(res);

但在我的原始场景中,我的列名称为:

 var data = [{ "dep name": 'A', qt: 10, price: 5},
     { "dep name": 'A', qt: 5,  price: 2.30 },
     { "dep name": 'B', qt: 3,  price: 2.20 },
     { "dep name": 'C', qt: 1,  price: 4 },
     { "dep name": 'C', qt: 4,  price: 10 }];

如何修改上述SQL查询,以便可以使用带空格的列名。 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

您可以使用反引号(`)来转义MySQL列名。这允许您:

SELECT A as `dep name` ...