Power BI中如何从另一张表获取对应唯一日期的数据
解决方案
要实现从Table A的唯一Crawl_date匹配Table B对应的Value B,可以用以下两种常见SQL写法:
方法一:DISTINCT + 内连接
先提取Table A中不重复的日期,再与Table B关联获取对应值:
SELECT DISTINCT a.Crawl_date, b.Value_B FROM Table_A a INNER JOIN Table_B b ON a.Crawl_date = b.Crawl_date;
逻辑说明:DISTINCT会自动去除Table A中重复的Crawl_date,再通过INNER JOIN将日期匹配的Table B记录关联过来,最终得到每个唯一日期对应的Value B。
方法二:子查询筛选日期
先通过子查询获取Table A的所有唯一日期,再在Table B中筛选匹配记录:
SELECT b.Crawl_date, b.Value_B FROM Table_B b WHERE b.Crawl_date IN ( SELECT DISTINCT Crawl_date FROM Table_A );
逻辑说明:子查询SELECT DISTINCT Crawl_date FROM Table_A先拿到所有需要的日期,外层查询直接在Table B中筛选出这些日期对应的Value B,结果和方法一一致。
两种方法都能得到你期望的结果,可根据实际表数据量选择:如果Table A数据量极大,第二种方法的子查询可能在性能上更优(具体取决于数据库优化器)。
内容的提问来源于stack exchange,提问作者harry
相关产品推荐
相关产品推荐

