ZF2如何在where子句中将值作为表达式传递

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ZF2如何在where子句中将值作为表达式传递相关的知识,希望对你有一定的参考价值。

我需要像这样的WHERE子句使用

$where->expression('YEARWEEK(create_date, 1)=?', 'YEARWEEK(CURDATE(), 1)');

在普通php中,我们像下面的sql一样使用:

SELECT *
FROM   your_table
WHERE  YEARWEEK(`date`, 1) = YEARWEEK(CURDATE(), 1)
答案

这应该很简单。

$select = $sql->select();
$where->addPredicate(new PredicateExpression('YEARWEEK(create_date, 1)=?', 'YEARWEEK(CURDATE(), 1)'));
$select->from('your_table')->where($where);

以上是关于ZF2如何在where子句中将值作为表达式传递的主要内容,如果未能解决你的问题,请参考以下文章

如何在光标的 select 语句 where 子句中传递逗号分隔值

如何在 LINQ where 子句中传递 func 表达式?

Redshift - 在 where 子句中从 csv 传递值

如何在 Django 中为“in”SQL 子句传递值列表

在 Sql Server 中将集合作为参数传递时使用 IN 子句

始终选择表中所有记录的 WHERE 子句