回答

收藏

从设施列表中获取子数据

技术问答 技术问答 235 人阅读 | 0 人回复 | 2023-09-12

我正能的情况下,我正能的话需要一些帮助。提前感谢。  b& u9 `" `6 m
我有一个从公共资源中获取的设施数据表(约10万行)。这些数据包含了一些关于我认为是同一地点(同一名称、城市、州)的记录,但它们有不同的套房号码。另一个有趣的代码是,我在数据上有一个选择计数器,每当有人选择其中一个功能时,我就会增加数据。这样,我就可以使用选择计数器和其他权重计算,以便在列表中显示更高的结果。0 o3 |$ g+ k/ g2 I* H6 j, Y
我想做的是编写查询。当有人输入搜索查询时,它只会显示设施的记录,该记录具有最高的选择计数,而忽略其他记录。
/ p% G5 b% H7 @! k2 W注:我不想预处理数据,因为它每个月都会重新加载。
" X/ K) s& ]! C0 |1 D: ]# e示意图:ID地址1地址2城市州邮政编码电话选择计数! v' X. O" }, p; D
实例搜索: women”
( z" q; p4 b4 _& W3 D7 C" KID  Name                        City        State   Selection Count1   Brigham & Women's Hospital  Boston      MA      222   Brigham & Women's Hospital  Cambridge   MA         303                       Brigham & Women's Hospital  Boston      MA     54   54        Brigham & Women's Hospital  Boston      MA       155                     Brigham & Women's Hospital  Orlando     FL       36                  36         Woman's Hospital of Detroit Detroit     MI      1007   Brigham & Women's Hospital  Boston      MA        088                  Woman's Hospital of Detroit Detroit     MI      55我想要的是一含1、2、5、6的结果集
2 |) f+ n$ x: G+ O. j2 M' r1、3、4、7是一样的,所以带回顶部选择计数。6和8是一样的。
3 _! u' d: d' j5 W4 H2 W5 ~+ s. q我相信这里有一个地方having和top但我还是不能让它做我想做的事。
( F/ W2 R9 P, F7 k: U有什么想法吗?; V% u: k% i$ C' x- c. C) `) l0 v
                                                               
# T9 u! u) q% _8 }  Q    解决方案:                                                               
, L+ T% r7 i& H# E                                                                怎么样
/ L* c0 D5 |9 F% y5 ~8 P4 yselect id,name,city,state,selcount from t where exists(  select 1 from  (select name,city,state,max(selcount) selcount     from t     group by name,city,state) s  where s.name = t.name and s.city = t.city and s.state = t.state and s.selcount = t.selcount)为此我建了一个SQL Fiddle,显示一个有效的例子。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则