开发者社区 > 数据库 > 数据仓库 > 正文

云原生数据仓库AnalyticDB PostgreSQL版结合使用时无法生效怎么办?

云原生数据仓库AnalyticDB PostgreSQL版在mybastis的mapper.xml中用if标签,和postgresql结合使用时无法生效?

展开
收起
夹心789 2024-06-04 08:18:42 19 0
1 条回答
写回答
取消 提交回答
  • postgresql是可以和mybastis的mapper.xml中用if标签一起使用的。可能要check下语法或者配置之类的导致的影响,您可以尝试使用CASE WHEN,来替代if,prepare语句需要SQL pattern保持不变 您这样写可能会导致SQL改变了,可以尝试类似这样构建SQL 保持SQL pattern不变看看SELECT field1, field2
    FROM tablename
    WHERE (filterCondition IS NULL OR filter = filterCondition);
    可以尝试类似这样构建SQL 保持SQL pattern不变看看,我是从避开使用if标签角度出发的。可能就算使用if标签通过某些配置也能解决这个问题。上面说的解法是推测if标签在filterCondition为NULL和不为NULL时生成不同的prepared statement导致出了问题。因此想要绕过去。 ,此回答整理自钉群“云原生数据仓库AnalyticDB PostgreSQL版交流群”

    2024-06-04 21:38:34
    赞同 展开评论 打赏

相关产品

  • 云原生数据仓库AnalyticDB MySQL版
  • 热门讨论

    热门文章

    相关电子书

    更多
    新氧云原生全栈数仓最佳实践 立即下载
    离线实时一体化数仓与湖仓一体—云原生大数据平台的持续演进 立即下载
    企业大数据平台下数仓架构 立即下载