我想根据用户凭据选择列值。
如果用户是admin,则可以显示列值,如果不是空,则必须为特定列显示值。示例代码粘贴在这里,我无法从java端控制它
public interface OrderRepository extends CrudRepository<Order, Long>(){
@Query(nativeQuery = true, value = "SELECT order_number from view_order order by created_on desc")
List<Object[]> findOrderNumber();
}
我的想法是,如果用户是admin,则将列作为"ordernumber"传递。如果不将其作为空字符串传递,如"。我无法得到想要的输出。任何一个试图在spring数据jpa存储库中生成动态本地查询的人
@Query(nativeQuery = true, value = "SELECT (:order_number) from view_order order by created_on desc")
List<Object[]> findOrderNumber( @Param("order_number") String order_number);
您可以为您的用例使用case语句。
如下所示:
select
case usertype
when 'Admin' then orderNumber
else ''
end as number
from orders