Запрос активной записи Codeigniter только строки с первой буквой не являются алфавитом

#sql #codeigniter #activerecord

#sql #codeigniter #activerecord

Вопрос:

Я пытаюсь написать оператор active record, в котором я смогу получить все строки в базе данных, где первая буква не равна алфавиту.

Это мой запрос активной записи

 $this->db->where("employer_name NOT LIKE '[^a-z]%'");
return $this->db->select()->from("v_employers")->get();
  

проблема с моим кодом заключается в том, что он получает все в моей базе данных

я только хочу получить строки, в которых первая буква не является алфавитом

пример (123 пенса, $ helloworld,7 уровней)

и так далее

Ответ №1:

Попробуйте это регулярное выражение в предложении where

 WHERE `employer_name` REGEXP '^[^a-zA-Z].*$'
  

Полный запрос:

 $this->db->query("SELECT * FROM v_employers WHERE `employer_name` REGEXP '^[^a-zA-Z].*$'");
  

Комментарии:

1. пробовал оба, и он по-прежнему показывает буквы алфавита, правильно ли я это написал? $this->db->where(«имя_пользователя НЕ ПОХОЖЕ НА ‘^[a-zA-Z].*$'»); возвращает $this->db-> select()->from(«v_employers»)->get();

2. @itsover9000 попробуйте этот синтаксис