Zend: Как использовать SQL-запрос с ключевым словом "like"?
Я использую zend framework. Я использую следующий запрос в zend, и он отлично работает для меня.
$table = $this->getDbTable();
$select = $table->select();
$select->where('name = ?', 'UserName');
$rows = $table->fetchAll($select);
Теперь я хочу создать другой запрос в zend с ключевым словом "like". В простом SQL это так.
SELECT * FROM Users WHERE name LIKE 'U%'
Теперь как конвертировать мой код zend для вышеуказанного запроса?
Ответы
Ответ 1
Try:
$table = $this->getDbTable();
$select = $table->select();
$select->where('name LIKE ?', 'UserName%');
$rows = $table->fetchAll($select);
или если UserName является переменной:
$table = $this->getDbTable();
$select = $table->select();
$select->where('name LIKE ?', $userName.'%');
$rows = $table->fetchAll($select);
Ответ 2
$user = new Application_Model_DbTable_User();
// User List
$uname=$_POST['uname'];
$query = $user
->select()
->where('firstname LIKE ?', $uname.'%')
->ORwhere('lastname LIKE ?', $_POST['lname'].'%')
->ORwhere('emailid LIKE ?', $_POST['email'].'%');
$userlist = $user->fetchAll($query);