0
点赞
收藏
分享

微信扫一扫

sequelize 获取查询结果的字段(mysql)

sequelize是好用,直接上代码吧

场景:执行下面代码,获取返回的字段

SELECT * from users left join details on users.id = details.id

开始的时候我一直用

sequelize.query('SELECT * from users left join details on users.id = details.id').then((a) => {
console.log(a)
})

这样子是有数据返回的,但是只有数据,没有结构,真实凄凉,我想要的是结构

没办法了,sequelize是没有字段结构返回的,各位大佬搭救一下我吧

后来看了mysql2的文档,字段结构一下子就出来了,但是这不是sequelize得,┭┮﹏┭┮

// get the client
const mysql = require('mysql2');

// create the connection to database
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
database: 'test'
});

// simple query
connection.query(
'SELECT * FROM `table` WHERE `name` = "Page" AND `age` > 45',
function(err, results, fields) {
console.log(results); // results contains rows returned by server
console.log(fields); // fields contains extra meta data about results, if available
}
);

换库吗?是不可能的,我寻思着在sequelize里面获取mysql2的connection,然后就有了下面一段代码

sequelize.connectionManager.getConnection().then((connection) => {
connection.query(`SELECT * from users`, function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ',results, fields);
})
})

总算获取到了,关键时刻还是得阅读源码,寻找思路。。。

举报

相关推荐

0 条评论