2015-07-09 3 views

ответ

0

На самом деле, лучший способ получить слова, которые начинаются с определенной буквы, чтобы использовать like:

select w.word 
from words w 
where w.word like 'x%' 
order by rand() 
limit 1; 

Это может воспользоваться индексом на words(word). Кроме того, если список действительно длинный, есть лучшие способы получить случайную строку, чем только order by rand().

1

Try:

SELECT `word` 
FROM `words` 
WHERE STRCMP(SUBSTRING(`word`,1,1),'x') = 0 
ORDER BY RAND() 
LIMIT 0,1