Я знаю, что у этого вопроса много дубликатов, но я уже потратил слишком много времени на поиск правильного решения.
Сначала взгляните на мой Node.JS:
var express = require('express');
var app = express();
app.get('/', function (req, res) {
var sql = require("mssql");
// config for your database
var config = {
user: 'myuser',
password: 'mypass',
server: 'myip',
database: 'mydatabase'
};
sql.close();
// connect to your database
sql.connect(config, function (err) {
if (err) console.log(err);
var dataqu = '';
// create Request object
var request = new sql.Request();
// query to the database and get the records
request.query("select * from AR_Invoices", function (err, recordset) {
if (err) console.log(err)
res.json(recordset);
sql.close();
});
});
});
var server = app.listen(5000,'0.0.0.0', function () {
console.log('Server is running..');
});
Этот код работает нормально, но структура результата json выглядит следующим образом:
{"recordsets":[[{"Tipe":"Invoices","InvoiceID":411891,"InvoiceNumber":"SR.1701.0001"}]],"recordset":[{"Tipe":"Invoices","InvoiceID":411891,"InvoiceNumber":"SR.1701.0001"}],"output":{},"rowsAffected":[1]}
Я не знаю почему, но по какой-то причине результат всегда приводит к дублированию.
И какпросто выберите InvoiceID
и InvoiceNumber
?
Я уже тестировал с использованием recordset.InvoiceID
или recordset[0].InvoiceID
, но все всегда напрасно, а результат всегда в двух экземплярах.
Может кто-нибудь объяснитькак это сделать правильно?
Я хочу, чтобы конечный результат стал таким:
[
{ "InvoiceID":"1", "InvoiceNumber":"mynumber" }
]