我认为这应该是一个非常简单的问题,但我找不到任何信息,所以我不得不问这个问题。我需要在postgresql上运行这个代码
我需要编写一个查询来使用用户输入作为参数来创建一个表。
例如,我们有一个这样的评分表
|userid | movieid | rating
1 | 1 | 122 | 5.0
2 | 1 | 185 | 4.5
3 | 1 | 199 | 3.3
4 | 2 | 110 | 5.0
5 | 2 | 199 | 4.0
6 | 2 | 231 | 4.0
因此,如果我想创建一个表来显示用户2的所有评分,我可以使用下面的查询。
CREATE TABLE query0 AS
SELECT ratings.userid, ratings.movieid,ratings.rating
FROM ratings
WHERE ratings.userid = '2'
我的问题是:如何通过参数得到一个表,让用户输入userid来创建一个表
我试过这样的方法,但肯定不行
CREATE TABLE query0 AS
SELECT ratings.userid, ratings.movieid,ratings.rating
FROM ratings
WHERE ratings.userid = :userinput
我需要在postgresql上运行代码
1条答案
按热度按时间bbuxkriu1#
这可以通过postgresql 9.5中的pl/pgsql函数轻松完成:
但是,如果需要创建大量表,则表名不能硬编码,应该是参数或自动生成。