簡體   English   中英

Mysql根據類似計數從多個表中選擇

[英]Mysql select from multiple tables based on like count

我的sql語句有這個問題,我不知道如何繞過它。 我正在使用WordPress和WTI Like Post插件以下是查詢:

 SELECT wpblog_posts.ID, wpblog_posts.post_title, wpblog_posts.post_excerpt, wpblog_posts.guid, wpblog_posts.post_author, wpblog_wti_like_post.value, wpblog_wti_like_post.post_id 
 FROM wpblog_posts, wpblog_wti_like_post 
 LEFT JOIN wpblog_term_relationships rel ON rel.object_id = wpblog_posts.ID 
 LEFT JOIN wpblog_term_taxonomy tax ON tax.term_taxonomy_id = rel.term_taxonomy_id 
 LEFT JOIN wpblog_terms t ON t.term_id = tax.term_id WHERE t.term_id = 165 
 AND wpblog_posts.post_type = 'post' 
 AND wpblog_wti_like_post.post_id = wpblog_posts.ID 
 ORDER BY wpblog_wti_like_post.value 
 LIMIT 20 

這是wpblog_wti_like_post表的屏幕截圖: 在此輸入圖像描述

所以我要做的是選擇一個類別中的所有帖子,並通過wpblog_wti_like_post.value訂購這些帖子現在在該類別中,一些帖子是喜歡和不喜歡的,並且出現在表wpblog_wti_like_post但是有些帖子沒有出現在表。

我怎么會:

一種。 選擇該類別中的所有帖子

按wpblog_wti_like_post.value排序

我完全不知道如何實現這一目標。

干杯

UPDATE

此查詢選擇來自特定類別的所有帖子並且工作正常,但上面的查詢不會:

SELECT wpblog_posts.ID, wpblog_posts.post_title, wpblog_posts.post_excerpt, wpblog_posts.guid, wpblog_posts.post_author 
FROM wpblog_posts 
LEFT JOIN wpblog_term_relationships rel ON rel.object_id = wpblog_posts.ID 
LEFT JOIN wpblog_term_taxonomy tax ON tax.term_taxonomy_id = rel.term_taxonomy_id 
LEFT JOIN wpblog_terms t ON t.term_id = tax.term_id 
WHERE t.term_id = 165 
LIMIT 20 

提示:類似以下內容更具可讀性......

SELECT p.ID
     , p.post_title
     , p.post_excerpt
     , p.guid
     , p.post_author
  FROM wpblog_posts p
  LEFT 
  JOIN wpblog_term_relationships rel 
    ON rel.object_id = p.ID
  LEFT 
  JOIN wpblog_term_taxonomy tax 
    ON tax.term_taxonomy_id = rel.term_taxonomy_id 
  LEFT 
  JOIN wpblog_terms t 
    ON t.term_id = tax.term_id
 WHERE t.term_id = 165
 LIMIT 20 

關於上述的一些觀察:

  • LEFT JOIN x... WHERE x =INNER JOIN x相同

  • LEFT JOINing表沒有選擇沒有列的表。 如上所述,上述內容實際上是內連接,因此這個事實僅供將來參考。

  • 沒有ORDER BY的LIMIT是沒有意義的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM