powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как оптимизировать выбор с like и AND
46 сообщений из 46, показаны все 2 страниц
Как оптимизировать выбор с like и AND
    #39700658
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть запрос
Код: sql
1.
select * from tbl where zz like '%55%' limit 5;


выполняется за 0.05 сек
делаю так

Код: sql
1.
select * from tbl where zz like '%55%' and zz like '%66%' limit 5;


выполняется уже за 2сек

почему такое различие?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700662
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Потому что второе условие требует кэширования на диск.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700666
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПотому что второе условие требует кэширования на диск.как это исключить?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700668
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
SELECT *
FROM ( SELECT *
       FROM tbl
       WHERE zz like '%pattern1%'
     ) xx
WHERE zz like '%pattern2%'


Причём желательно внутрь запихать наиболее селективный шаблон.
На версии 8+ можно использовать CTE.

Но ничего не поможет, если даже на наиболее селективном шаблоне промежуточная выборка "пухлая".
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700671
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaНа версии 8+ можно использовать CTE.это что ? дай ссылку
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700672
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПотому что второе условие требует кэширования на диск.а почему? а если добавить памяти для кеша?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700676
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесть запрос
Код: sql
1.
select * from tbl where zz like '%55%' limit 5;



выполняется за 0.05 сек
делаю так

Код: sql
1.
select * from tbl where zz like '%55%' and zz like '%66%' limit 5;



выполняется уже за 2сек

почему такое различие?Утрируя, у вас %55% в каждой второй записи, поэтому достаточно прочитать первый десяток и готово. А %66% в одной записи на миллион, поэтому приходится читать с диска 5 миллионов записей. Чувствуете разницу?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700702
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftУтрируя, у вас %55% в каждой второй записи, поэтому достаточно прочитать первый десяток и готово. А %66% в одной записи на миллион, поэтому приходится читать с диска 5 миллионов записей. Чувствуете разницу?у меня 3м записей и 10+гиг для кэша, т.е. всё в кэше. и один like срабатывает только по памяти. если сделать кэш 20гиг?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700704
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесть запрос
Код: sql
1.
select * from tbl where zz like '%55%' limit 5;


выполняется за 0.05 сек
делаю так

Код: sql
1.
select * from tbl where zz like '%55%' and zz like '%66%' limit 5;


выполняется уже за 2сек

почему такое различие?

Потому что это разные запросы, они выполняться за разгон время будут.


Like надо писать только с % в конце, и только достаточно длинные паттерны
Иначе это не оптимизирует ся
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700705
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесть запрос
Код: sql
1.
select * from tbl where zz like '%55%' limit 5;


выполняется за 0.05 сек
делаю так

Код: sql
1.
select * from tbl where zz like '%55%' and zz like '%66%' limit 5;


выполняется уже за 2сек

почему такое различие?

А ну да, парень, если ты время мерить хочешь, limit убирай всегда
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700709
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяэто что ? дай ссылку
WITH Syntax (Common Table Expressions)

вадяа если добавить памяти для кеша?Память не поможет. Всё равно кэшируется НА ДИСК. Вот перенос базового каталога на SSD - это поможет.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700713
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяmiksoftУтрируя, у вас %55% в каждой второй записи, поэтому достаточно прочитать первый десяток и готово. А %66% в одной записи на миллион, поэтому приходится читать с диска 5 миллионов записей. Чувствуете разницу?у меня 3м записей и 10+гиг для кэша, т.е. всё в кэше. и один like срабатывает только по памяти. если сделать кэш 20гиг?Так селективность условий какая? Даже если не надо все это поднимать с диска, то для CPU работа остается в полном объеме.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700714
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaВсё равно кэшируется НА ДИСК.Почему? тут же нет ни сортировки, ни группировки.
AkinaВот перенос базового каталога на SSD - это поможет.Тогда уж в RAM, если ее полно.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700715
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя10+гиг для кэшаА MySQL об этом знает? Настройки заданы и тип таблицы позволяет?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700716
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivА ну да, парень, если ты время мерить хочешь, limit убирай всегдадля абсолютного сравнения - согласен.

Akina,
твой совет не помог
12
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
SELECT
  *
FROM (SELECT
    xxx.ID,
    xxx.UPCEAN,
    xxx.Name,
    xxx.CategoryName,
    xxx.BrandName,
    xxx.zz
  FROM xxx
  WHERE xxx.zz LIKE '%зяйст%' xx
WHERE xx.zz LIKE '%65%'

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
SELECT
  xxx.ID,
  xxx.UPCEAN,
  xxx.Name,
  xxx.CategoryName,
  xxx.BrandName,
  xxx.zz
FROM xxx
WHERE xxx.zz LIKE '%зяйст%'
AND xxx.zz LIKE '%65%'


время одинаковое
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700718
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftА MySQL об этом знает? Настройки заданы и тип таблицы позволяет?всё прописано в .ini
AkinaПамять не поможет. Всё равно кэшируется НА ДИСК. Вот перенос базового каталога на SSD - это поможет.обращения к диску нет.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700725
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как выполняется такое:
Код: sql
1.
WHERE xxx.zz LIKE '%зяйст%' AND xxx.zz LIKE '%65%'


если первый like возвращает false, выполняется ли второй like?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700727
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяесли первый like возвращает false, выполняется ли второй like?Конечно. К тому же "второй по тексту" вовсе не означает "второй при выполнении".

вадя , а мы когда-нибудь увидим DDL таблицы, EXPLAIN запроса, и ответ на вопрос miksoftТак селективность условий какая?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700731
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
CREATE TABLE uhtt.xxx (
  ID int(11) DEFAULT NULL,
  UPCEAN bigint(20) DEFAULT NULL,
  Name varchar(255) DEFAULT NULL,
  CategoryID int(11) DEFAULT NULL,
  CategoryName varchar(150) DEFAULT NULL,
  BrandID int(11) DEFAULT NULL,
  BrandName varchar(100) DEFAULT NULL,
  id_ int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  zz varchar(500) GENERATED ALWAYS AS (CONCAT_WS(' ', `Name`, `BrandName`)) VIRTUAL,
  PRIMARY KEY (id_)
)
ENGINE = INNODB,
AUTO_INCREMENT = 2925499,
AVG_ROW_LENGTH = 69,
CHARACTER SET utf8,
COLLATE utf8_general_ci;

ALTER TABLE uhtt.xxx
ADD INDEX IDX_xxx_UPCEAN (UPCEAN);

ALTER TABLE uhtt.xxx
ADD INDEX IDX_xxx_zz (zz);



Код: sql
1.
2.
3.
4.
5.
6.
EXPLAIN 
SELECT
 *
FROM xxx
WHERE xxx.zz LIKE '%зяй%'
AND xxx.zz LIKE '%65%'




"id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"SIMPLE""xxx"null"ALL"nullnullnullnull30360841,23"Using where"


Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
EXPLAIN
SELECT
  *
FROM (SELECT
    *
  FROM xxx
  WHERE ((xxx.zz LIKE '%зяй%'))) xx
WHERE (xx.zz LIKE '%65%')



"id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"SIMPLE""xxx"null"ALL"nullnullnullnull30360841,23"Using where"
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700733
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaКонечно. К тому же "второй по тексту" вовсе не означает "второй при выполнении".т.е. если первое условие не удовлетворяет , а значит бессмысленно проверять второе, второе всё равно будет проверено?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700742
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадявторое всё равно будет проверено?Да.

По EXPLAIN - оптимизатор явно развернул подзапрос.

По селективности: покажите результат запроса
Код: sql
1.
2.
SELECT COUNT(*), SUM(zz LIKE '%зяй%'), SUM(zz LIKE '%65%'), SUM(zz LIKE '%зяй%' AND zz LIKE '%65%')
FROM xxx 



А также - раз
Код: sql
1.
zz varchar(500) GENERATED ALWAYS AS (CONCAT_WS(' ', `Name`, `BrandName`)) VIRTUAL,

, то дополнительный вопрос - указанные подстроки могут встречаться как в Name, так и в BrandName?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700743
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
EXPLAIN 
SELECT
  xxx.ID,
  xxx.UPCEAN,
  xxx.Name,
  xxx.BrandName
FROM xxx
WHERE IF((xxx.zz LIKE '%зяйственн%'), IF((xxx.zz LIKE '%65%'), 1, 0), 0) = 1


"id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"SIMPLE""xxx"null"ALL"nullnullnullnull3036084100,0"Using where"
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700747
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[quote Akina], то дополнительный вопрос - указанные подстроки могут встречаться как в Name, так и в BrandName?[/quoteсоздаётся "универсальный" поиск, т.е. считается, что заранее неизвестно где может втретиться
Код: sql
1.
2.
SELECT COUNT(*), SUM(zz LIKE '%зяй%'), SUM(zz LIKE '%65%'), SUM(zz LIKE '%зяй%' AND zz LIKE '%65%')
FROM xxx 



"COUNT(*)""SUM(zz LIKE '%зяй%')""SUM(zz LIKE '%65%')""SUM(zz LIKE '%зяй%' AND zz LIKE '%65%')"2925390"1419""32344""39"
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700752
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
полнотекстовый поиск тебе поможет он для этого и придуман.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700758
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT
  *
FROM (SELECT
    *
  FROM xxx
  WHERE ((xxx.zz LIKE '%зяйственн%'))) xx
WHERE (xx.zz LIKE '%65%')

Код: sql
1.
2.
3.
4.
SELECT
    *
  FROM xxx
  WHERE xxx.zz LIKE '%зяйственн%' AND xxx.zz LIKE '%65%'

Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT
  xxx.ID,
  xxx.UPCEAN,
  xxx.Name,
  xxx.BrandName
FROM xxx
WHERE IF((xxx.zz LIKE '%зяйственн%'), IF((xxx.zz LIKE '%65%'), 1, 0), 0)

2.3052.3042.084
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700759
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durakполнотекстовый поиск тебе поможет он для этого и придуман.нет, он ищет с начала строк/слов
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700764
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT
  xx.ID,
  xx.UPCEAN,
  xx.Name,
  xx.BrandName,
  xx.zz
FROM (SELECT
    xxx.ID,
    xxx.UPCEAN,
    xxx.Name,
    xxx.BrandName,
    xxx.zz
  FROM xxx
  WHERE ((xxx.zz LIKE '%зяйственн%'))) xx
WHERE (xx.zz LIKE '%65%')

2.110
звезды тормозят
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700765
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не понимаю, как "rows"3036084может соседствовать с"COUNT(*)"2925390
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700766
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадязвезды тормозятЭто общеизвестно как бы...
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700771
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaНе понимаю, как "rows"3036084может соседствовать с"COUNT(*)"2925390я вот тоже не понимаю такого.....
эти данный были взяты от людей которые собрали базу штрихкодов из разных источников
я недавно спрашивал про utf8, вот видимо что-то связано с дурной кодировкой в полях....
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700777
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
влияние виртуализации
для такого запроса
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
SELECT
  xx.ID,
  xx.UPCEAN,
  xx.Name,
  xx.BrandName,
  xx.zz
FROM (SELECT
    xxx.ID,
    xxx.UPCEAN,
    xxx.Name,
    xxx.BrandName,
    xxx.zz
  FROM xxx
  WHERE ((xxx.zz LIKE '%зяйственн%'))) xx
WHERE (xx.zz LIKE '%65%')


Код: sql
1.
 zz blob GENERATED ALWAYS AS (CONCAT_WS(' ', `Name`, `BrandName`)) STORED,

Код: sql
1.
zz blob GENERATED ALWAYS AS (CONCAT_WS(' ', `Name`, `BrandName`)) VIRTUAL,

1.8061.609
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700779
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дополнительно - поле zz bkob
по сравнению с 21670533
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700781
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяIvan Durakполнотекстовый поиск тебе поможет он для этого и придуман.нет, он ищет с начала строк/слов
ну погугли чтоли
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700782
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durakну погугли чтолиуже..
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39700820
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaНе понимаю, как "rows"3036084может соседствовать с"COUNT(*)"2925390Первое - из приблизительной статистики, второе - точный подсчет.
Сходятся довольно точно. Но если кажется точность недостаточной, то можно принудительно пересобрать статистику.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701130
Polar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT
...
FROM xxx WHERE (xx.zz LIKE '%65%зяйственн%')
 UNION
SELECT
 ...
FROM xxx WHERE (xx.zz LIKE '%зяйственн%65%')



А так не?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701137
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Polar
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT
...
FROM xxx WHERE (xx.zz LIKE '%65%зяйственн%')
 UNION
SELECT
 ...
FROM xxx WHERE (xx.zz LIKE '%зяйственн%65%')




А так не?не...
это логика или
а надо и
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701139
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не прав...
не внимательно смотрел
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701144
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PolarА так не?
"id""select_type""table""partitions""type""possible_keys""key""key_len""ref""rows""filtered""Extra"1"PRIMARY""xxx"null"ALL"nullnullnullnull303608411,11"Using where"2"UNION""xxx"null"ALL"nullnullnullnull303608411,11"Using where"null"UNION RESULT""<union1,2>"null"ALL"nullnullnullnullnullnull"Using temporary"

время выполнения 3.486
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701150
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
SELECT
  xxx.ID,
  xxx.UPCEAN,
  xxx.Name,
  xxx.BrandName
FROM xxx
WHERE INSTR(xxx.zz, 'зяйственн')
AND INSTR(xxx.zz, '65')


время выполнения 1.716
причём очень слабо зависит от числа таких условий
в отличии от like
и слабо зависит от длины подстроки поиска
в отличии от like
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701159
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадя,

А если искать по исходным полям Name и BrandName ?
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701200
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftА если искать по исходным полям Name и BrandName ?да
но тут как поиск по одному полю идет быстро (для 3м записей :) )
поиск по 2 полям - это задача из "торговли" когда надо найти товар конкретного производителя
чтоб не писать в имени товара название производителя раздувая справочник товаров.
при 100 000 записей такой поиск - практически мгновенный - позволяет вываливать" список найденного при вводе очередного символа.
ну если 3лимона - то 1.6 сек в некоторых случаях можно и подождать....
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701203
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,
вот для
Код: sql
1.
2.
3.
4.
5.
6.
7.
SELECT
  xxx.ID,
  xxx.Name,
  xxx.BrandName
FROM xxx
WHERE xxx.Name  LIKE '%зяйственн%'
AND xxx.Name like '%65%'


время 1.26
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701207
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вадяэто логика или
а надо иСуммарно это логика И . Запись, соответствующая одному шаблону и не соответствующая другому, не попадёт в итоговую выборку.
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39701210
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaСуммарно это логика И . Запись, соответствующая одному шаблону и не соответствующая другому, не попадёт в итоговую выборку.я это позже увидел :)
...
Рейтинг: 0 / 0
Как оптимизировать выбор с like и AND
    #39709500
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сравнил по быстродействию 5.7.23 vs 8.0.11 разницы нет....
...
Рейтинг: 0 / 0
46 сообщений из 46, показаны все 2 страниц
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Как оптимизировать выбор с like и AND
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]