0
我正在將PostgreSQL查詢轉換爲SQL服務器,並試圖瞭解下面的查詢究竟做了什麼。我理解這些聯合,但其餘的都不明確。任何人都可以請幫我在這裏。將用戶訪問查詢從PostgreSQL轉換爲SQL Server
select c.name
FROM CNT c
LEFT JOIN shares s ON
c.id = s.id AND s.username::name = "current_user"()
WHERE c.username::name = "current_user"() OR 'admin'::text = ((SELECT user_role_privs.granted_role
FROM user_role_privs
WHERE user_role_privs.granted_role = 'admin'::text)) OR s.username IS NOT NULL AND s.grantee_username::text <> ''::text
感謝這一點,但'dbo.user_role_privs'似乎並不是SQL Server中的有效對象。它看起來像一個postgreSQL系統表。 – user3844877 2014-09-30 11:56:21
我更改爲使用IS_NUMBER函數,如果當前用戶是指定數據庫角色的成員,則返回1。 – 2014-09-30 12:04:04