• ベストアンサー

データベースの検索方法

管理番号,ステータス,次の管理番号,表示フラグ 1,1,,1 2,2,1,0 3,2,3,0 4,1,,1 管理番号...auto_incrementにより、一意の値です ステータス…1.非公開,2.公開中 次の管理番号はこのデータの次のデータ管理番号が入っています 表示フラグは0または1が入ります ステータスが2で次の管理番号から管理番号をたどり、 その中で表示フラグ1のものだけを絞り込んで取得したいです。 mySqlの場合はどのように記述すれば、 よろしいでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • t_ohta
  • ベストアンサー率38% (5238/13705)
回答No.2

SELECT t1.* FROM テーブル t1, テーブル t2 WHERE t1.次の管理番号 = t2.管理番号 AND t1.ステータス = 2 AND t2.表示フラグ = 1; +----------+------------+--------------+------------+ | 管理番号 | ステータス | 次の管理番号 | 表示フラグ | +----------+------------+--------------+------------+ | 2 | 2 | 1 | 0 | +----------+------------+--------------+------------+

toema
質問者

お礼

回答をいただきまして、ありがとうございます。

その他の回答 (1)

回答No.1

すべてカラムを分けて考えるべきです。 1カラムで複数のステータスを制御するなんてDBアクセスの規格外だと思います。 (まったく拡張性の余地がありません)

関連するQ&A