马上,您会想到“使用ORDER BY,然后使用列”,但我的价值是:


一种
ž

一种
ž


当我使用此查询对它们进行排序时:

SELECT * FROM Diaries ORDER BY title ASC;


然后我得到这个:


一种

ž
一种
ž


当我想要得到这样的东西时,第一个问题:


一种
一种

ž
ž


我在其他地方遇到了相同的排序问题,第二个问题,但是我可以通过以下方式解决:通过将所有字符暂时都用小写

for (NSString *key in [dicGroupedStories allKeys]) {
    [dicGroupedStories setValue: [[dicGroupedStories objectForKey: key] sortedArrayUsingComparator:^NSComparisonResult(id a, id b) {
        NSString *stringA = [[a objectStory_title] lowercaseString];
        NSString *stringB = [[b objectStory_title] lowercaseString];

        return [stringA compare: stringB];
    }] forKey: key];

}


我不使用该比较器对第一个问题进行排序的唯一原因是,我不想执行查询然后对它们进行排序然后使用数组。

问题:我想知道是否有一种方法可以像我在第二期中那样在SQL查询中对它们进行排序


  对象id a和id b是包含其他对象(如标题,创建日期,描述等)的数组。objectDiary_title返回NSString

最佳答案

在SQL中,可以在lower()中使用upper()order by函数:

ORDER BY lower(Diaries), diaries

关于mysql - 排序MySQL查询忽略大小写,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31527563/

10-11 02:51
查看更多