Проблема с MySQL пытается выбрать из значений определенных CHAR_LENGTH и Order by DESC - PullRequest
0 голосов
/ 04 мая 2019

Здравствуйте, поэтому в моей базе данных есть информация об игроке. Он сохраняет их информацию под двумя UID, но их кошелек имеет одинаковое значение.

Мой текущий запрос просто берет оба идентификатора и помещает их в мой список. Я искал некоторое время и не могу найти способ заставить мой запрос отбрасывать символы длиной более 10.

Мне действительно отчаянно нужна помощь. Я измотан.

Текущий запрос:

$query = "SELECT rpname, wallet FROM darkrp_player ORDER by wallet DESC LIMIT 20";

Что бы я хотел, чтобы это было:

$query = "SELECT CHAR_LENGTH(uid)10>, rpname, wallet FROM darkrp_player ORDER by wallet DESC LIMIT 20";

В основном я пытаюсь вернуть только UID длины символа = 10

Заранее спасибо, ребята!

Ответы [ 2 ]

1 голос
/ 04 мая 2019

Если вы просто хотите вернуть 10 самых левых 10 символов значения uid, вы можете использовать LEFT:

SELECT LEFT(uid, 10) AS uid, rpname, wallet 
FROM darkrp_player 
ORDER by wallet DESC 
LIMIT 20

Если вы хотите игнорировать значения uid длиннее 10 символов, вы можете использовать предложение WHERE для LENGTH из uid:

SELECT uid, rpname, wallet 
FROM darkrp_player 
WHERE LENGTH(uid) <= 10
ORDER by wallet DESC 
LIMIT 20
0 голосов
/ 04 мая 2019
 SELECT uid, rpname, wallet FROM darkrp_player 
WHERE LENGTH(uid) = 10 ORDER by wallet DESC LIMIT 20
...