这是我的查询,用于查找表中的所有记录并从最早的记录开始排序。我想将一列限制为仅50个字符。我找不到任何信息来更改此查询以使用left子句。
$posts = $ChocoPosts->findBy(array(), array('id' => 'DESC'));
此外,我尝试为此使用干净的sql语法,但未显示任何记录。
$conn = $this->getDoctrine()->getManager()->getConnection();
$sql = '
SELECT id, title, left(content, 45), date_add, img
FROM choco_posts
ORDER BY id DESC
';
$stmt = $conn->prepare($sql);
$stmt->execute();
$stmt->fetchAll();
我正在使用symfony4 ant树枝模板。我将所有记录显示在树枝中以进行循环。
答案 0 :(得分:0)
您可以简单地使用SUBSTRING
语句,例如:
$sql = '
SELECT id, title, SUBSTRING(content, 1, 45), date_add, img
FROM choco_posts
ORDER BY id DESC
';
它们自身之间几乎没有什么区别,但是left可以潜在地利用索引,而substring则不能。
希望获得帮助
答案 1 :(得分:0)
您可以: