やあみんな、ナビゲーションにページを保持する page_names というデータベース テーブルがあります。そのテーブル内には、メイン ナビゲーションの場合は 0 の parentid があり、数字がある場合はその親の子です。
テーブル ( where ispublished = 1
) からすべての行を選択する必要がありますが、そのナビゲーション ページに子があることを示すために、0 または数値に設定される「haschild」と呼ばれる別の識別子がデータセットに必要です。私はphpの配列でこれを行うことを考えましたが、それを設定したほうがよいことに気付きました。
同じテーブルに参加して値を設定し、選択ステートメントを選択しようとしましたが、必要なものを達成できないようです。これは簡単なことのように思えますが、私は立ち往生しています。これが私がいる場所であり、私はそれが近くにさえないことを知っています.
SELECT p.* , coalesce( pp.parentid, 0 ) AS haschild
FROM page_names p
LEFT JOIN page_names pp ON p.id = pp.parentid
WHERE p.ispublished =1
AND pp.ispublished =1
ORDER BY p.orderout