質問を作成することが困難です。私はたくさんのグーグルではありますが、適切な解決策を見つけられませんでした。 私はテーブルには、 'ブログ'(親)と 'エントリ'(子)と呼ばれるテーブルと呼ばれています:クエリのためのSQLのforeach相当
ブログ
- ID
- 対象
- 所有者
エントリ
- ID
- (1 =公開、0 =未公表)
- はDATE_CREATED公開
- をblog_id(タイムスタンプ、作成および公開された場合)
ブログは複数のエントリを有しています。公開されたエントリのみが他のユーザーに表示されます。
最新の10個の変更されたブログを取得するクエリを作成したいとします。このために、私はおそらくすべてのブログを検索するSQLに「foreachの」同等のものを必要とするだろう、と最新の公表エントリ(entry.date_modified)で注文したがentry.published = 1つの
マイSQLの知識がオンにされていない場合のみこのようなクエリを作成できるレベルです。 追加情報:私はそれが動作しないだろうことを知って、これを試してみましたが、それは私が欲しい私は
SELECT blog.id
FROM blog
JOIN entry ON entry.blog_id = blog.id
WHERE entry.published = 1
ORDER by entry.date_created desc
LIMIT 0, 10
を達成しようとしています何のための参照としてあなたを助けるかもしれないMySQLの
とPHP(CodeIgniterの)を使用して、私の最終的な結果は、自分の子供のエントリが最も再会された10のblog.idです。誰かが助けてくれますか?すべての援助は非常に高く評価されます。
これは1つのクエリでは実現できない場合は、おそらくPHPで私はforeach文で個別のクエリを実行できますか?
バグがあなたの例ではあります:entry.date_created対entry.date_modified ... – home
はあなたが最新のブログに言及...あなたが意味しますか最新のブログそのもの、または特定の「アクティブな」ブログに投稿されたエントリーを表示します。例:20日前から1つのブログが今日新鮮な投稿となり、10日前に "利用可能"である実際のブログと比較して... 20日前のブログは、 – DRapp
@DRappこれは後者を意味します。最新の子供(エントリ)を持つ20日前のブログは、私が示す必要があるものです。投票された答えは私にちょうどそれを与えた。 – Dogla305