回答

收藏

加入而不是相关子查询

技术问答 技术问答 429 人阅读 | 0 人回复 | 2023-09-11

CREATE TABLE BlogPosts
7 f3 m# }# ]: O  ~# }(0 t2 G) z: E# l* `. s3 d
PostID INT PRIMARY KEY  not null,
; d. b( j- b/ G/ ~$ YPostTitle NVARCHAR ,
) L' Z  j: L& ]! }BlogID int,
. k+ R. d9 C8 x, VTotalComments int
6 S8 r/ Z' u* b% ^" @, `% R). T$ f; ]& g% m' p) @4 K3 O
可以使用任何Join而不是相关子查询来简化此查询吗?( M* c) y: U6 B; l
SELECT TOP 5 *
% @8 z" i2 |6 |' f) K5 ]! M* EFROM BlogPosts as t0
) S6 m# O$ ]0 ~/ ~: T$ SWHERE t0.PostID = (SELECT TOP 1 t1.PostID / ]; R0 T% F: M+ b5 @
                FROM BlogPosts as t1
8 d7 l4 G, e- v2 w' O                WHERE t0.BlogID = t1.BlogID( I' l- m, X- N: ]% ]9 h- J7 u% c
                ORDER BY t1.TotalComments DESC)
9 ]* W# ^6 C- u9 J1 i我需要来自不同博客的5个帖子,其maxTotalComments数量最多。3 _' `1 m# A3 c/ W1 J
UPD。SQL Server,但我希望使用标准SQL
  d. ]: K1 a- P" r# `. x4 D               
" n: D& T, R2 d5 o* G% q. L解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则