を参照してください、私は次のようになり、テーブルがあります:私はchild = Y
を持つレコードとその親を取得しようとしていますMYSQL選択クエリの条件が同じテーブル
TBLA
code | name | parent_code | status | child
---------------------------------------------------------
1 | ABC | | complete | N
1.1 | ABC.1 | 1 | pending | Y
2 | BCD | | pending | N
2.1 | BCD.1 | 2 | pending | Y
をstatus = complete
これは私が得ようとしている出力です
code | name | parent_code | status | child
----------------------------------------------------------
1.1 | ABC.1 | 1 | pending | Y
これまでのところ、私が使用しているメソッドは、すべてのレコードをchild=Y
で照会し、前回の照会からparent_code
の各code
ベースのステータスを取得するために再度ループしています。
クエリをよりシンプルにすることはできますか?
SELECT child.*
from tblA child join tblA parent on child.parent_code =parent.code
WHERE parent.child = 'N' and parent.status = 'complete'
あなたは親の状態によって何を意味するか –
@Jensを期待している出力テーブルを追加しますか?親のため親が自分自身には 'parent_code'はありません –
@JosephGoh私はあなたの質問を参照しています:'親の状態=完了 ' – Jens