java - 如何获取sql查询的元数据信息

标签 java jdbc postgresql-9.1

我正在使用 postgres 9.1 和 jdbc 的 java 代码。

我可以在我的sql查询字符串中使用order by子句

我只是想获取查询的元数据信息来查找查询是否有order by子句。如果有,则在 order by 子句 中指定了多少个字段。

例如: 按年龄排序 按年龄、姓名排序 按年龄升序、姓名降序排列

在这些示例中,我只想检索 order by 子句中指定的参数数量及其列名称。

最佳答案

如果您将查询作为字符串获取,您可以简单地解析它。

即找出 ORDER BY 的存在

"SELECT * FROM MyTable ORDER BY SomeColumn".toLowerCase().indexOf("order by") // if it's return -1 query does not contains order by section otherwise it returns start index for first occurence "ORDER BY" in given string

对于更复杂的字符串搜索,您可能需要使用 RegExp

关于java - 如何获取sql查询的元数据信息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13915134/

相关文章:

java - 如何从表中获取jdbc空对象

sql - 测试非整数是否在 [a,b) - 或 [a,b], (a,b), (a,b] 范围内

java - 递归地从 XML 中删除空节点

Java SWT控件修改后不改变

java - 我们到底需要做什么才能通过 AMQP 从 Linux 上的 Java 客户端使用本地 Service Bus

java - json 解析器异常

java - 连接 Amazon RDS 上的顶级 PostgreSQL 9.3.1 时 Hibernate/JDBC 挂起

java - 可以使用 JAVA sql 打开两个到不同远程 MySQL 服务器的持久连接吗?

sql - 访问记录成员

postgresql - 无法恢复 pg_dump 备份