按字母顺序排序对保存为blob的数据不起作用?

jqjz2hbq  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(283)

我在问我的朋友 DRIVER 以及 CAR 表并尝试按顺序排列结果列表 name 按字母顺序( ASC , a-z ). 然而,我的结果表并没有反映出我的想法 sql 语句,因为它完全不是按字母顺序排列的:( Joe, Lucas, James, Ginny 应显示为 Ginny, James, Joe, Lucas ).
我把这些都加密了 name 值使用 RSA Encryption 在把它们放进我的房间之前 DRIVER 表组件 BLOB 数据类型。这会不会影响我的查询没有按我希望的方式排序?
详情如下。
我的table:

DRIVER (driverID, username, name,....)

CAR (license, brand,....)

我的结果表打印输出:

Driver ID | username | Name  | License Plate | Brand
----------------------------------------------------
004       | joe867   | Joe   | M8M UZX       | Toyota
001       | luke99   | Lucas | A99 PX3       | Hyundai
003       | james3   | James | YPL 393       | Ford
002       | ginny23  | Ginny | HP2 111       | Subaru

我的 selectDriver() 查询方法(为了简单起见,省略了方法名括号、try-catch等)。

String sql = "SELECT driverID, username, name, license, brand
FROM driver, car
WHERE driver.driverID = car.driverID_FK
ORDER BY name ;"

PreparedStatement pst = connect.prepareStatement(sql);
rs = pst.executeQuery();

List<Driver> list = new ArrayList<Driver>();

while (rs.next()){

   Driver driver = new Driver(); //My Driver bean class
   driver.setDriverID(rs.getInt(1));
   driver.setUsername(rs.getString(2));
   ...
   driver.setBrand(rs.getString(5));
   list.add(driver);
}

rs.close();
connect.close();
return list;

我的jsp with jstl结果表:

<table>
   <tr>
     <th>Driver ID</th>
     <th>Username</th>
     <th>Name</th>
     <th>License Plate</th>
     <th>Brand</th>
   </tr>

   <c:forEach var="driver" items="${driverArray}">
   <tr>
      <td><c:out value="${driver.driverID }"/></td>
      <td><c:out value="${driver.username }"/></td>
      <td><c:out value="${driver.name }"/></td>
      <td><c:out value="${driver.license }"/></td>
      <td><c:out value="${driver.brand }"/></td>
        </tr>
    </c:forEach>    
</table>
xe55xuns

xe55xuns1#

只需要一点零钱。把你的问题写成

String sql = "SELECT driverID, username, name, license, brand
FROM driver, car
WHERE driver.driverID = car.driverID_FK
ORDER BY driver.name ;"

希望能成功!

相关问题