定義された値に等しい行のすべての列を取得するための単純なステートメントがあるかどうか疑問に思っていました。
ユーザーが持っている権利を表す表があります。
例えば
userid | right A | right B | right C | right D
----------------------------------------------
1 | 0 | 0 | 1 | 1
----------------------------------------------
2 | 1 | 0 | 1 | 1
----------------------------------------------
3 | 0 | 0 | 0 | 1
値が1のユーザーのすべての列を返すクエリが必要です
ユーザー2の場合、結果は次のようになります。
「右A」、「右C」、「右D」
現時点では、行全体をロードし、結果を反復処理して列名を取得していますが、クエリで直接これを実行したいと思います。
MySQLによると、show columnsなどのwhere句は名前のみをテストし、特定の行の値はテストしません。
1以外の結果からすべての値をフィルタリングするクエリも役立ちますが、すべての列名を知らなくても作業する必要があります:-/
おそらくプロシージャはオプションですが、それはphpからmysqlにコードをアウトソーシングするだけです:-/
何かアイデアや完全に不可能ですか?
少し早いですがお礼を!:)