回答

收藏

加入而不是相关子查询

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

CREATE TABLE BlogPosts
! v4 r# e& j: }" U" `+ s* m(2 n8 j" y7 H% F& D1 j4 Q9 G% f
PostID INT PRIMARY KEY  not null,% A1 ?; t* B* _+ v$ Z4 I, g) `+ }/ D
PostTitle NVARCHAR ,5 q/ p8 n5 Y+ n) S5 y, T
BlogID int,$ Q( J6 l- k3 P4 F. Y
TotalComments int
, U8 G& M% T$ ^$ f2 D, Q)
# ~* y0 B  U7 i: b可以使用任何Join而不是相关子查询来简化此查询吗?2 J; h* V4 ]; @. O3 p, Y) n
SELECT TOP 5 *
6 R- z; T8 c& M) U0 p  V1 fFROM BlogPosts as t0) g# t9 V/ ^/ l7 \
WHERE t0.PostID = (SELECT TOP 1 t1.PostID 4 I) ?3 _' C! w
                FROM BlogPosts as t1
$ B* p+ G( N$ {/ ~1 k' S                WHERE t0.BlogID = t1.BlogID
$ L& V9 s, x& V# k% N" h                ORDER BY t1.TotalComments DESC)* e+ ~! W  a1 v  @4 e# i% P
我需要来自不同博客的5个帖子,其maxTotalComments数量最多。
7 C% _0 n( x) ]  e- ?! N0 _UPD。SQL Server,但我希望使用标准SQL5 ~& W) }! x5 \9 z7 m7 p4 ~9 |9 o
               
+ r' {; @" ~5 c5 w0 V4 z- h解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则