Azure 物联网中心 sql 查询

Azure IoT Hub sql query

我正在尝试使用查询语言查询 IoT 中心设备孪生。我有以下代码片段,它不是 working.I 我没有得到任何结果。当我用一些硬编码日期替换 dt 时,我将获得设备列表。是不是我无法使用此查询将变量传递给集线器?请帮助我。

   var dt = new Date();
         dt.setDate( dt.getDate() - 4 );
         console.log(dt);


var query = registry.createQuery('SELECT * FROM devices where lastActivityTime > dt', 100);
var onResults = function(err, results) {
  if (err) {
    console.error('Failed to fetch the results: ' + err.message);
  } else {
    // Do something with the results
    results.forEach(function(twin) {
      console.log(twin.deviceId);
    });

    if (query.hasMoreResults) {
        query.nextAsTwin(onResults);
    }
  }
};

您可以使用 JavaScript 模板字符串实现您想要的效果 - 请注意 `' 的使用示例:

var dt = new Date();
dt.setDate( dt.getDate() - 3);
var dateString = dt.toISOString();

var query = registry.createQuery(`SELECT * FROM devices WHERE lastActivityTime > '${dateString}'`, 100);