こんにちは、私はこのようなテーブル構造を持っています
id name is_file disp_order parent
1 PDF Folder 0 2
2 textpdf1 1 1 1
3 PPT Folder 0 1
4 testppt1 1 2 3
5 testppt2 1 1 3
私の要件は、データを順番に取得することです。つまり、ファイルは名前順で、フォルダーは disp_order 順です。
私は 1 つのクエリを書きましたが、特定の親に 10 人を超える子がいる場合は失敗します。disp_order は数値の Myquery ではなく文字列としても機能します。
select id,nae,is_file,disp_order from contents
where parent_id=3
order by case
when is_file=1 then display_text
when is_file=0 then display_order
end ASC;
私のDB親3には、この1,10,11,12,2,3,4,5,6のような順序でフェッチするタイプのフォルダの20個のレコードがあります。