Ваша проблема в том, что с помощью id = random.choice(open('ID.log').readlines())[32:]
вы получаете строку файла, включая символы новой строки в конце.
Возможное исправление: метод str.rstrip()
, который удаляет завершающие пробелы:
id = random.choice(open('ID.log').readlines())[32:].rstrip()
SELECT SQL_CALC_FOUND_ROWS
Id, Name
FROM my_table
WHERE
Name LIKE '%prashant%'
LIMIT 0, 10;
# Find total rows
SELECT FOUND_ROWS();
MySQL поддерживает это, используя SQL_CALC_FOUND_ROWS
, как упомянуто Ionut. Однако оказывается, что во многих случаях на самом деле быстрее сделать это старомодным способом, используя два оператора, где одно из них является обычным count ()
. Это, однако, требует, чтобы подсчет можно было выполнить с помощью сканирования индекса, что не будет иметь место для этого самого запроса, но я решил упомянуть об этом в любом случае.