我想对两个表进行并集,但我需要知道结果来自哪里。这是我的加入。
(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中的数组中?
尝试:
(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)