ЗАКАЗ ПО ТАМОЖЕННОМУ ЗАКАЗУ - PullRequest
0 голосов
/ 13 марта 2020

$ words = $ db-> selectMultiRecords ("выберите * из слов, где engli sh как порядок '$ alphabet%' ......");

У меня есть список слова, которые я хочу заказать по этому порядку:

('a', 'b', 'g', 'G', 'd', 'D', 'e', ​​'f', ' к», 'К', 'ч', 'р', 'о', 'х', 'Q', 'я', 'J', 'L', 'т', 'N', 'и' , 'r', 'R', 'V')

Прописные буквы и строчные не совпадают (d не D)

Не могли бы вы мне помочь?

1 Ответ

0 голосов
/ 13 марта 2020

Используйте ORDER BY с FIELD:

SELECT *
FROM words
WHERE english LIKE '$alphabet%'
ORDER BY FIELD(LEFT(english, 1),
               'a','b','g','G','d','D','e','f','k','K','h','p','o','x','q','i','j','l','m','n','u','r','R','V');

Вы, кажется, используете какой-то вариант PHP, но я его не распознаю, поэтому я просто дал необработанный запрос. Кроме того, вы должны избегать использования PHP переменных внутри ваших SQL строк; вместо этого используйте подготовленные заявления.

...