我有一张满是“标题”的表格,我想通过标题订购。问题是他们中很多人在标题前都有空格。我正在考虑编写一个PHP脚本来解决所有问题(超级简单),但我很好奇我该怎么做:
SELECT * FROM products ORDER BY title
但同时修剪标题所以它不会在空白区域进行排序。全部在同一查询中而不更改数据。上帝,我希望我有意义。
所以我真的在寻找一个mysql解决方案。为了它的价值我使用Zend_Db所以使用它的解决方案会更好但我可以直接管理MySQL。
答案 0 :(得分:10)
您可以使用TRIM功能:
SELECT TRIM(title) as title, field2, field3 FROM products ORDER BY TRIM(title)
应该这样做!
答案 1 :(得分:3)
我会自己回答,因为我的问题的确切解决方案是:
SELECT * FROM products ORDER BY TRIM(title)
我仍然会接受codykrieger的回答,因为他做到了,所以我找到了解决方案。
以下是Zend_Db答案:
$products->fetchAll($products->select()->order('TRIM(title) ASC'));
答案 2 :(得分:2)
纯SQL查询看起来像这样:
更新产品SET title = TRIM(标题)