Sql 基于会话用户的动态过滤器

Sql 基于会话用户的动态过滤器,sql,dremel,Sql,Dremel,我有一个包含用户名的行的表。我有两个用户将查看该表,我希望根据会话用户的身份筛选该表以显示特定的用户名。这可能吗 样本数据 Username| --------- 1 | 2 | 3 | 4 | 5 | 6 | 如果session_user()=“A”,则表应仅显示 Username| --- 1| 2| 3| Username| --- 4| 5| 6| 如果session_user()=“

我有一个包含用户名的行的表。我有两个用户将查看该表,我希望根据会话用户的身份筛选该表以显示特定的用户名。这可能吗

样本数据

Username| 
---------
 1      |
 2      | 
 3      | 
 4      |
 5      |
 6      |
如果session_user()=“A”,则表应仅显示

Username| 
---
 1|
 2| 
 3|
Username| 
---
 4|
 5| 
 6|
如果session_user()=“B”,则表应仅显示

Username| 
---
 1|
 2| 
 3|
Username| 
---
 4|
 5| 
 6|
附加条件:除了2个查看器之外,所有用户名都将作为查看器添加,但也将仅针对其自己的数据进行过滤


所以基本上,如果查看器是其中一个用户名,那么它将只显示它们自己的数据,但是如果它是其中一个管理器,表将显示分配给它们的用户名

您是否只需要类似于
的内容,其中session\u user=usercolumn
假设我有第1、2、3、4、5、6行。然后是会话用户A和B。当会话用户=A时,只显示第1、2、3行,而当会话用户=B时,只显示第4、5、6行。我只是不确定如何在Where子句中实现这一点。编辑问题并添加一些示例表数据和预期结果。(作为格式化文本,而不是图像)我添加了示例,我将向表中添加一个列用户,并为第1、2和3行存储一个。等等。否则,您如何知道id为13的下一行属于哪个用户?