【发布时间】:2020-09-29 20:36:59
【问题描述】:
我不确定这是否可能实现,但希望找到有关我在 java 中的存储库的 JQPL 查询的信息。我有一个这样的示例表:
Name | Address | City |
--------------------------
A | A | C |
C | B | B |
B | C | A |
我希望这样当我传入列名时,我将能够按列对所有行的结果进行排序。例如,如果我按名称订购,那么它应该返回 A B C 而不是 A C B。我知道这可以使用基本查询来实现,例如:
SELECT * FROM Customers
ORDER BY Name;
但是我不确定我是否可以将该选项应用于所有列。因此,如果用户决定将 order 选项传递给 address 他们可以这样做,但如果他们决定将其设置为 city 也是如此。因此,为了清楚起见,我正在尝试为我的查询应用按所有列排序的选项,但不确定这是否可能。如果不是,是否有替代方案?谢谢。
【问题讨论】:
-
您可以调整查询字符串以包含您想要排序的列。
-
你好@GordonLinoff,很抱歉问,你能举个例子来说明你的意思吗?
-
你的问题对我来说有点不清楚。但就排序而言,您可以按单列或多列排序。
-
你好@RajenRaiyarela 我的意思是我的表有三列,它是一个连接到控制器访问的存储库方法的查询。我现在有了它,用户可以传入控制器的列名。我想知道的是,是否可以按用户传入的名称进行排序,我该怎么做?
-
您可以将作为输入参数接收到的列名附加在SQL语句中order by子句之后作为变量。