首页 > 解决方案 > 在创建视图上选择用户

问题描述

我有一张桌子project.users和一张桌子project.questions

我必须创建一个视图来选择用户提出的所有问题。但是如何在WHERE子句中选择用户?

name_user 是用户表的主键

CREATE VIEW project.getAllQuestions(id_question, name_user, date, text ,title) AS
SELECT qu.id_question, qu.name_user, qu.date, qu.text, qu.title
FROM project.questions qu WHERE qu.name_user= ????
ORDER BY qu.date

标签: sqlpostgresql

解决方案


视图没有参数——视图的行为就像一张表。

也许你想要一个集合返回函数:

CREATE FUNCTION get_user_questions(auser text) RETURNS SETOF project.questions
   LANGUAGE sql AS
'SELECT * FROM project.questions
WHERE name_user = auser';

推荐阅读