Doctrine 的 findBy*() 中的 LIKE 和 % 通配符

LIKE and % Wildcard in Doctrine#39;s findBy*()(Doctrine 的 findBy*() 中的 LIKE 和 % 通配符)

本文介绍了Doctrine 的 findBy*() 中的 LIKE 和 % 通配符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

How do I write the following MySQL query using Doctrine's findBy*() method?:

SELECT column_name1, column_name2 FROM table_name
WHERE column_name3 LIKE '%search_key%';

For Example, to fetch multiple rows from a column named "ColumnName" (below) using Doctrine:

$users = Doctrine::getTable('User')->findByColumnName('active');

echo $users[0]->username;
echo $users[1]->username;

I tried:

$search_key = 'some value';
$users = Doctrine::getTable('User')->findByColumnName('%$search_key%');

    echo $users[0]->username;
    echo $users[1]->username;

and I got no errors, but nothing displayed.

Any assistance will be really appreciated. Thanks in advance.

解决方案

$users = Doctrine::getTable('User')->createQuery('u')
  ->where('column_name3 LIKE ?', '%search_key%')
  ->execute();

这篇关于Doctrine 的 findBy*() 中的 LIKE 和 % 通配符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本文标题为:Doctrine 的 findBy*() 中的 LIKE 和 % 通配符

基础教程推荐