- ベストアンサー
データベースの検索方法
管理番号,ステータス,次の管理番号,表示フラグ 1,1,,1 2,2,1,0 3,2,3,0 4,1,,1 管理番号...auto_incrementにより、一意の値です ステータス…1.非公開,2.公開中 次の管理番号はこのデータの次のデータ管理番号が入っています 表示フラグは0または1が入ります ステータスが2で次の管理番号から管理番号をたどり、 その中で表示フラグ1のものだけを絞り込んで取得したいです。 mySqlの場合はどのように記述すれば、 よろしいでしょうか。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
SELECT t1.* FROM テーブル t1, テーブル t2 WHERE t1.次の管理番号 = t2.管理番号 AND t1.ステータス = 2 AND t2.表示フラグ = 1; +----------+------------+--------------+------------+ | 管理番号 | ステータス | 次の管理番号 | 表示フラグ | +----------+------------+--------------+------------+ | 2 | 2 | 1 | 0 | +----------+------------+--------------+------------+
その他の回答 (1)
- kenpiro3313
- ベストアンサー率22% (56/254)
回答No.1
すべてカラムを分けて考えるべきです。 1カラムで複数のステータスを制御するなんてDBアクセスの規格外だと思います。 (まったく拡張性の余地がありません)
お礼
回答をいただきまして、ありがとうございます。