0

我想用两张表做一个联合,但我需要知道结果来自哪里。这是我的加入。

(SELECT  * FROM watchlist_movies WHERE movie_id = $1 and user_id = $2)
UNION ALL
(SELECT* FROM favorite_movies WHERE movie_id = $1 and user_id = $2)

所以我的目标是返回一个包含两个对象的数组。例如,

[
{watchList: [... results]},
{favorites: [... results]}
]

这个结果是可能的还是必须创建两个单独的 sql 语句并将它们打包到 Node.js 中的数组中?

4

1 回答 1

2

尝试:

(SELECT 'Watchlist', a.* FROM watchlist_movies a WHERE movie_id = $1 and user_id = $2)
UNION ALL
(SELECT 'Favorites', b.* FROM favorite_movies b WHERE movie_id = $1 and user_id = $2)
于 2020-09-04T05:27:58.717 回答