java - 在预期的地方找不到关键字
问题描述
我如何修复未找到预期错误的关键字!请任何人帮助谢谢
执行查询时未在预期位置找到 FROM 关键字
String query = "select bc.institution_code,bc.branch_code,tmp.order_channel,tmp.order_root_div,"
+ "count(ls.session_id) as tenlogincount from branch bc,login_session ls,(select a.session_id,a.branch_id,"
+ "b.order_channel,c.order_root_div from(select session_id,property_value as branch_id"
+ "from login_session_property where property_name = 'branchID') a,(select session_id,"
+ "property_value as order_channel from login_session_property where property_name = 'orderChannel') b,"
+ "(select session_id,property_value as order_root_div from login_session_property"
+ "where property_name = 'orderRootDiv') c where a.session_id = b.session_id"
+ "and b.session_id = c.session_id) tmp where to_char(ls.creation_date, 'YYYY-MM-DD') = ?"
+ "and ls.type_id in (select type_id from login_type where type_name like '%customer_login_type%')"
+ "and ls.session_id = tmp.session_id and bc.branch_id = tmp.branch_id"
+ "and ((to_char(ls.creation_date,'HH24MI') <= ? and to_char(ls.last_update,'HH24MI') >= ?"
+ "and ls.validity <> 0) or (to_char(ls.creation_date,'HH24MI') <= ?"
+ "and to_char(ls.expiration_date,'HH24MI') >= ? and ls.validity = 0)) group by bc.institution_code,"
+ "bc.branch_code,tmp.order_channel,tmp.order_root_div";
解决方案
连接字符串时需要用空格分隔单词。
例如,在第 3 行的结尾和第as branch_id
4 行的开头之间from login_session_property
。这将成为as branch_idfrom login_session_property
. 看到错误了吗?这没有意义。
只需确保在每行末尾添加一个空格,以确保在构建整个字符串时分隔单词。第 3 行的末尾应该看起来像as branch_id
<-- 这里末尾有一个额外的空格。
你有几行有同样的错误。
推荐阅读
- python - Flask Web App:按按钮过滤表视图
- sql - Laravel 查询 - 向翻译表请求短语
- mariadb - 两个联合语句部分中的内部选择的别名
- android - 未包含在语言环境中时不使用默认字符串资源
- hamburger-menu - 加载时显示 Imoji 的汉堡侧菜单和主页图标(有时)
- linkedin - 使用新的 r_liteprofile 是否可以知道经过身份验证的用户的 LinkedIn 个人资料 URL?
- angular - 响应式表不会填充它嵌套的整个列
- android - 谷歌播放保护阻止安装我的调试 apk
- node.js - 如何在 Node.js 项目中的 Arango 或 Neo4j 中存储和管理数据库模式
- python - Pandas - 如何比较一列的两个连续行