Действительно ли SQLite может отсортировать естественно?

Не все файлы кэша браузеров с '?' в нем. Что я сделал, чтобы удостовериться, что это кэшировалось как можно больше, я включал версию в имя файла.

Так вместо stuff.js?123, я сделал stuff_123.js

, я использовал mod_redirect (я думаю) в апаче к к have stuff_*.js для движения stuff.js

7
задан 4 July 2009 в 03:09
поделиться

2 ответа

ORDER BY UPPER (name) выполнит то, что вы ищете.

Кроме того, вы используете сортировку по умолчанию SQLite , что означает что сравнения выполняются с помощью функции C memcmp , которая сравнивает байты. В этом случае M и m очень разные. Вы можете изменить столбец, чтобы иметь сопоставление NOCASE . Хотя, просматривая документы, кажется, что вам придется создать новую таблицу, скопировать в нее данные, отбросить старую таблицу и переименовать новую, поскольку команда ALTER TABLE только переименовывает таблицу или добавляет столбец.

7
ответ дан 6 December 2019 в 10:52
поделиться

У вас нет чтобы изменить таблицу, чтобы изменить сопоставление:

SELECT name FROM animals ORDER BY name COLLATE NOCASE;

Если вам нужна более специализированная сортировка, вы можете зарегистрировать свои собственные функции сопоставления с помощью семейства функций sqlite3_create_collation * , а затем использовать СОБРАТЬ myCollationFunctionName .

11
ответ дан 6 December 2019 в 10:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: