不正确的续集查询



我有这个续集查询,它不返回预期的列。

db.conn.query(
" SELECT t1.id, t1.name, t2.name" +                   
"   FROM category t1 " +
"    LEFT OUTER JOIN parental t2 ON t1.id = t2.id "

这是续集日志:

> Executing (default): SELECT t1.id, t1.name, t2.name   FROM category t1
> LEFT OUTER JOIN parental t2 ON t1.id = t2.id

这是结果表:

┌─────────┬────┬──────┐
│ (index) │ id │ name │
├─────────┼────┼──────┤
│    0    │ 1  │ 'L'  │
│    1    │ 2  │ '10' │
│    2    │ 3  │ '12' │

请注意,结果表中不存在列t2.name

但是,我在mySql工作台中做了同样的查询,我得到了第三列。

有人对这个问题有想法吗?

提前感谢!

似乎 sequelize 使用键映射将结果集加载回应用程序中。您需要为所有列提供不同的列名称。

例如,您可以将第一行更改为:

SELECT t1.id, t1.name, t2.name as name2

以分别以idnamename2的形式接收所有三列。表达式as <alias>为 SQL 查询中的列或计算表达式分配别名。

最新更新