相关疑难解决方法(0)

SQL离开连接与FROM行上的多个表?

大多数SQL方言都接受以下查询:

SELECT a.foo, b.foo
FROM a, b
WHERE a.x = b.x

SELECT a.foo, b.foo
FROM a
LEFT JOIN b ON a.x = b.x
Run Code Online (Sandbox Code Playgroud)

现在很明显,当您需要外连接时,需要第二种语法.但是在进行内部连接时,为什么我更喜欢第二种语法(反之亦然)?

sql syntax join

245
推荐指数
7
解决办法
25万
查看次数

在Doctrine ORM中是否可以将LIMIT添加到UPDATE查询中?

我正在使用Doctrine 2.5.x,并且在使LIMIT子句适用于UPDATE查询时遇到问题。它总是更新所有匹配的记录(即似乎忽略LIMIT子句)。

setMaxResults() 与UPDATE查询一起使用时似乎无效。

作为一种快速的解决方法,我正在使用本机MySQL查询,但这并不是最佳解决方案。

我尝试了以下示例,但没有一个起作用:

具有LIMIT的学说更新查询

https://recalll.co/app/?q=doctrine2%20-%20Doctrine%20update%20query%20with%20LIMIT

QueryBuilder与setMaxResults()(不起作用):

$qb = $em->createQueryBuilder();

$query = $qb->update('\Task\Entity', 't')
    ->set('t.ClaimedBy', 1)
    ->where('t.Claimed IS NULL')
    ->getQuery();
$query->setMaxResults(20);

$this->log($query->getSQL());
Run Code Online (Sandbox Code Playgroud)

希望有人可以找到比本地查询更好的解决方案。它剥夺了ORM的全部优势。

甚至可以在UPDATE语句中使用LIMIT子句吗?

php doctrine symfony doctrine-orm

5
推荐指数
1
解决办法
615
查看次数

标签 统计

doctrine ×1

doctrine-orm ×1

join ×1

php ×1

sql ×1

symfony ×1

syntax ×1