mysql - 如何解决 Laravel 6 中的 MariaDB 语法错误?
问题描述
我正在使用 XAMPP 和 MySQL 版本是:mysql Ver 15.1 Distrib 10.2.10-MariaDB, for Win32 (AMD64)
目前,我从一个雄辩的查询中收到一个错误,但我仍然找不到确切的错误。我将查询与抛出的错误一起发布,请有人检查它以帮助我解决它。提前致谢。
$employees = Employee::join('store','store.id','=','employee.store_id')
->whereRaw("employee.id IN (".$storeWeekSchedule->employees.")")
->where('employee.temporary_status','=','1')
->where('employee.status_id','=','1')
->where('employee.position_id','>','0')
->select('employee.id AS id',DB::raw('concat(employee.first_name," ",employee.last_name) AS FullName'),'employee.store_id','employee.date_of_birth')
->orderBy('store.id')
->orderBy('employee.last_name')
->orderBy('employee.first_name')
->get();
错误:
SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')) and `employee`.`temporary_status` = ? and `employee`.`status_id` = ? and `emp' at line 1 (SQL: select `employee`.`id` as `id`, concat(employee.first_name," ",employee.last_name) AS FullName, `employee`.`store_id`, `employee`.`date_of_birth` from `employee` inner join `store` on `store`.`id` = `employee`.`store_id` where JSON_CONTAINS(employee.id IN ()) and `employee`.`temporary_status` = 1 and `employee`.`status_id` = 1 and `employee`.`position_id` > 0 order by `store`.`id` asc, `employee`.`last_name` asc, `employee`.`first_name` asc)
解决方案
推荐阅读
- react-native-android - 任务 ':app:transformDexArchiveWithDexMergerForDebug' 执行失败
- mirth - Mirth SQL Server 数据库阅读器源,DBMaxRetries 错误
- node.js - 运行一次性脚本的好方法
- django - Django 站点地图:仅在文档开头允许 XML 声明
- python-3.x - 为python构建C扩展——'undefined reference to _Py_GC_generation0'
- html - 使用纯 HTML 在电子邮件中并排创建响应式图像
- amazon-web-services - DynamoDB LIKE '%' (contains) 使用对象中的键搜索对象数组,NodeJS
- sql-server - 我想将文件上传到 sqlserver 中的表中,请协助
- angular - 根据Angular 8中的nric号码显示出生日期
- asp.net-mvc - PayPal:创建和获取订单