Я создал базу данных SQLite для приложения Android, и до сих пор она работает нормально, но конкретный запрос не возвращает результатов. Я совершенно не знаком с SQL, поэтому, если с моим запросом что-то не так, я хотел бы знать.
SELECT word,freq FROM wordlist WHERE word = '%ras' AND dist = 2 ORDER BY freq DESC
Слово - это varchar (4), а freq и dist - целые числа
Сама таблица содержит около 4000 слов из четырех букв, и определенно должно быть хотя бы одно слово, удовлетворяющее условиям слова формы "_ras" и dist = 2
2 ответа
Вы можете попробовать с этим,
Если вам нужно получить слово, оканчивающееся на «ras», вам нужно написать следующий запрос:
SELECT word,freq FROM wordlist WHERE word like'%ras' AND dist = 2 ORDER BY freq DESC
В сочетании с оператором LIKE используются два символа подстановки:
% вернет ноль, один или несколько чисел или символов.
А _ представляет собой одну цифру или символ перед словом.
Для этого вы можете запросить, как показано ниже:
SELECT word,freq FROM wordlist WHERE word like'_ras' AND dist = 2 ORDER BY freq DESC
Я думаю, вам нужно использовать «нравится» вместо = для сравнения слов.
Можешь попробовать:
SELECT word,freq FROM wordlist WHERE word like '%ras' AND dist = 2 ORDER BY freq DESC
И если вы хотите получить результаты только на письме, прежде чем ras попробуйте
SELECT word,freq FROM wordlist WHERE word like '_ras' AND dist = 2 ORDER BY freq DESC
Похожие вопросы
Новые вопросы
android
Android — это мобильная операционная система Google, используемая для программирования или разработки цифровых устройств (смартфонов, планшетов, автомобилей, телевизоров, одежды, очков, IoT). Для тем, связанных с Android, используйте теги, специфичные для Android, такие как android-intent, android-activity, android-adapter и т. д. Для вопросов, отличных от разработки или программирования, но связанных с Android framework, используйте эту ссылку: https://android .stackexchange.com.