相关疑难解决方法(0)

是什么让SQL语句变得可思议?

根据定义(至少从我所见过的),sargable意味着查询能够使查询引擎优化查询使用的执行计划.我已经尝试过查找答案,但似乎没有太多关于主题的内容.所以问题是,什么做或不做一个SQL查询sargable?任何文件将不胜感激.

供参考:SARGable

sql-server performance

243
推荐指数
4
解决办法
7万
查看次数

将MySQL函数传递给Eloquent ORM查询

我试图在Eloquent ORM中执行以下查询,似乎无法执行MySQL函数 -

$post = Post::where('slug', '=', $slug)->where('YEAR(created_at)', '=', $year)->first();
Run Code Online (Sandbox Code Playgroud)

我得到的例外情况如下 - 消息:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'YEAR(created_at)' in 'where clause'

SQL: SELECT * FROM `posts` WHERE `slug` = ? AND `YEAR(created_at)` = ? LIMIT 1

Bindings: array (
  0 => 'placeholder',
  1 => 2013,
)
Run Code Online (Sandbox Code Playgroud)

所以,基本上,它将YEAR()MySQL函数封装为一列.有没有办法在不使用原始查询的情况下执行此操作?

php database laravel eloquent

8
推荐指数
2
解决办法
7283
查看次数

标签 统计

database ×1

eloquent ×1

laravel ×1

performance ×1

php ×1

sql-server ×1