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的下一行属于哪个用户?