Laravel SQL一般错误:4015窗口函数仅在选择列表中允许和按子句订购
我正在尝试在Laravel中获取下一行和上一行ID,但它不会让我这样做而不会得到此错误:
sqlstate [hy000]:常规错误:仅允许窗口功能4015 在选择列表和订单中,按子句(SQL:SELECT ORDERID,雇员, LEAD(OrderId,1)Over(OrderID)NextID,滞后(Orderid,1) (订购订单)从订单组中订购的先前 员工,隔壁,以前)
这是正在处理的代码
$order = DB::select(DB::raw("
SELECT
OrderID,
EmployeeID,
LEAD(OrderID,1) OVER (
ORDER BY OrderID
) nextID,
lag(OrderID,1) OVER (
ORDER BY OrderID
) previous
FROM
orders
group BY
OrderID,
EmployeeID,
nextID,
previous
"))->orderby('OrderID', 'EmployeeID', 'nextID', 'previous')->get();
I'm trying to get the next row and previous row id in Laravel but it wont let me do it without getting this error:
SQLSTATE[HY000]: General error: 4015 Window function is allowed only
in SELECT list and ORDER BY clause (SQL: SELECT OrderID, EmployeeID,
LEAD(OrderID,1) OVER ( ORDER BY OrderID ) nextID, lag(OrderID,1) OVER
( ORDER BY OrderID ) previous FROM orders group BY OrderID,
EmployeeID, nextID, previous )
This is the code am working on
$order = DB::select(DB::raw("
SELECT
OrderID,
EmployeeID,
LEAD(OrderID,1) OVER (
ORDER BY OrderID
) nextID,
lag(OrderID,1) OVER (
ORDER BY OrderID
) previous
FROM
orders
group BY
OrderID,
EmployeeID,
nextID,
previous
"))->orderby('OrderID', 'EmployeeID', 'nextID', 'previous')->get();
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
尝试
Try
希望这会帮助某人。
SQL查询
Laravel查询构建器
Hope this is will help someone.
SQL Query
Laravel Query Builder