Power BI直连Redshift执行自定义SQL时丢失部分行的问题求助
问题场景
直接在Redshift执行SQL时,结果包含全量符合条件的记录(结果中可见ID小于15256612的行)。
但使用Power BI通过Direct Query模式,以自定义SQL连接同一Redshift数据库执行完全相同的SQL语句时,仅显示ID大于15256612的行,其余符合条件的记录均未展示。
环境说明
- 使用全新报表,无任何预设筛选器,也未引用其他数据源
- Power BI自定义SQL配置界面显示:SQL语句输入正常,连接模式为Direct Query
- Power BI预览结果显示:仅展示ID值大于15256612的记录
排查方向
- 核对SQL一致性:逐字符对比Power BI中输入的自定义SQL和Redshift本地执行的语句,注意大小写、空格、注释、换行符等细节,避免工具自动修改SQL内容
- 查看Redshift执行日志:查询
STL_QUERY和STL_QUERYTEXT系统表,对比Power BI发起的SQL请求与本地执行的SQL是否存在差异 - 验证字段类型匹配:确认Redshift中ID字段的数据类型(如
BIGINT/INT)与Power BI识别的类型一致,排查类型转换导致的隐性过滤 - 简化SQL测试:先执行仅查询ID字段的简单SQL,观察结果是否完整,逐步添加原SQL中的其他条件或关联,定位问题根源
- 检查权限与账号一致性:确认Power BI连接Redshift使用的账号,与本地执行SQL的账号权限完全相同,排除行级别权限(RLS)或数据权限差异导致的可见性问题
内容的提问来源于stack exchange,提问作者Jim J
相关产品推荐
相关产品推荐

