私たちのサイトのブログの一部はwordpressです。メインサイトのホームページに行ってみたいのは、最新のブログ記事を抜粋して、メインサイトに投稿し、ブログサイトの記事へのリンクを付けることです。私は正しく動作するSQL文を取得しようとしていると私はメインの部分があると思うが、2つのSELECTの代わりに1つのSELECTに入れたい。SQLは2つの選択肢を1つにまとめます
私は2つのSELECTを持っている理由は、投稿の最新リビジョンを取得することです。最初にリビジョンSELECTを試して、返された行があるかどうかを確認します。もし行えば、完了です。行がない(投稿にリビジョンがない)場合は、2番目のSELECT文を使用します。
SELECT TOP 1 * FROM wp_posts
WHERE post_type = 'revision'
AND post_parent IN (SELECT [object_id]
FROM wp_term_relationships
WHERE term_taxonomy_id = 3)
ORDER BY post_modified DESC
SELECT TOP 1 * FROM wp_posts
WHERE id IN (SELECT [object_id]
FROM wp_term_relationships
WHERE term_taxonomy_id = 3)
ORDER BY post_modified DESC
にはどうすればいいので、私は常に後列(すなわち最も最近のブログ記事)事前に
感謝を得ることの保証することができます。SELECTシングルにこれら二つのSELECTを組み合わせることができます。頭に浮かぶ
私も組合について考え、それで多くの経験を持っていなかったが、私はそれについて確信していました。組合結果セットからトップ1を選択する方法はありますか?クライアントに最大2行を返し、最初のものよりも何も無視するのは大したことではないでしょう。 –
少なくとも、あなたはおそらく副選択することができます。その効果を更新する。しかし、2つまでのレコードを検索するだけでは、パフォーマンスに大きな影響はありません。 –