10個のカラムと20個のレコードを持つSQLテーブルがあります。列の1つにus_nameというユーザー名が含まれています。現在ログインしているユーザーごとにテーブル行をフィルタリングする必要があります。この目的のために、次のSQLコマンドを使用しています。ユーザがA
,B
,C
,D
、テーブル名がab_cd
であるとします。Select where where then then else in SQL
SELECT *
FROM ab_cd
WHERE us_name = 'current_user'
正常に動作しています。しかし、ユーザーD
の場合、D
がスーパーユーザーであることを示す完全な表が必要です。私はこれのようなものが必要です。
IF Current_user = 'D'
Then
SELECT *
FROM ab_cd
Else
SELECT *
FROM ab_cd
WHERE us_name = 'current_user'
しかし、動作しません。誰も助けることができますか?
SQL-ServerまたはMySQLの:もちろん
、これは
in
演算子を使用して人手不足するだろうか?それは非常に異なるDBMSです – Jens