我有一个问题,如何构建一个从相关表中返回子对象的自定义api脚本。
我的表格结构looks like this(我不允许上传图片:-()。
我的脚本看起来像这样(SQL要复杂得多,我的问题很简单):
exports.get = function(request, response) {
var sql = "SELECT * FROM [PointsOfInterests] ";
request.service.mssql.query(sql, [],{
success: function(results)
{
response.send(statusCodes.OK, results);
}
});
};
我现在的问题是如何将属性“地址”包含在结果中? 我的reslut对象看起来像这样:
[
{
id: 123,
address:
{
City: test
}
}
]
感谢您的帮助!
答案 0 :(得分:1)
我了解您的问题是指Windows Azure移动服务。
您可以使用自定义API执行此操作。请参阅Define custom APIs in Windows Azure Mobile Services。
使用使用关节的SQL查询从两个表中返回所需的数据。请参阅Join Fundamentals和Using Inner Joins以了解语法。
例如,您可以使用以下查询:
select a.Id, a.Name, a.Location, b.City, b.PLZ, b.Street
from PointsOfInterest as a
inner join Address as b
on a.AddressId = b.ID
然后从结果集中创建一个JavaScript对象,其中包含响应消息所需的结构。
如果“a”中有与“b”(可选关系)中的任何记录无关的记录,您可能还需要使用left outer join。