ユーザーのユーザー グループに基づいてユーザーのレコードへのアクセスが制限されているプロジェクトに取り組んでいます。グローバル変数 $usr_sec_group を作成しました。いくつかのアプリケーションの SELECT ステートメントの WHERE 句に、$usr_sec_group の値に基づいて異なるフィルターを適用する CASE ステートメントを追加したいと考えています。私は mySQL に関して比較的「初心者」であり、そのようなステートメントを作成しようとしてもうまくいきませんでした。基本的なロジックは次のとおりです。
SELECT
field1,
field2,
etc
FROM
Organizations
CASE $user_sec_group
WHEN 1 THEN 'filter_statement_1'
WHEN 2 THEN 'filter_statement_2'
WHEN 3 THEN 'filter_statement_3'
ELSE 'filter_statement_else'
END CASE
ORDER By
field1
「filter_statements」は、次のような有効なフィルターにすることができます。
'oName => 'a' AND oName < 'g'
問題は比較的単純な構文の問題だと思いますが、これまでのところ、機能する CASE ステートメントを書くことができませんでした。
いくつかのガイダンスに感謝します!
よろしくお願いします、
エリック