mysql - Laravel 和 MySQL JOIN

标签 mysql laravel join

我对此查询有疑问...我需要再插入 2 个连接..

->join('torneo as t','t.idtorneo','=','p.id_torneo')

->join('temporada as s','s.idtemporada','=','p.id_temporada')

运行:

->select('p.idpartido','p.id_temporada','t.nombre_torneo as torneo','s.temporada as nombre_temporada','c.nombre as team1','k.nombre as team2','p.estado')

我的代码可以正常工作...但是当添加其他连接时...它会失败。

“SQLSTATE[23000]:违反完整性约束:1052”

public function index(Request $request)
    {
    	if ($request)
    	{
    		$query=trim($request->get('searchText'));
    		$partidos=DB::table('partido as p')
    		->join('club as c','p.idteam1','=','c.idclub')
            ->join('club as k','p.idteam2','=','k.idclub')
            ->select('p.idpartido','p.id_temporada','c.nombre as team1','k.nombre as team2','p.estado')
    		->where('estado','=','Activo')
    		->orderBy('idpartido','desc')
    		->paginate(7);
    		return view('partidos.index',["partidos"=>$partidos,"searchText"=>$query]);
    	}
    }

抱歉我的英语不好。

最佳答案

数据可能有问题,因为您正在使用->join,它是Mysql 中的innner join 尝试使用->leftJoin 如果数据可用,它不会让查询中断,它将进行连接,否则它将从连接表中选择的列保留为空白,希望它能有所帮助:)

关于mysql - Laravel 和 MySQL JOIN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50624930/

相关文章:

php - Laravel Telescope 无法打开流 : no such file or directory TelescopeServiceProvider. php

mysql - 这个 MySQL 查询有什么问题,它有一个带有 JOIN 的子查询,应该链接来自 3 个表的数据?

mysql - 从两个表中提取 SQL 数据

mysql - 加入mysql的问题

mysql - 相当于pgpool-II for MySQL

php - MySQL 在选择查询中使用生成的列

javascript - 在 For in 循环中渲染复选框并在 Vue JS 中绑定(bind)它们的值

mysql - BNF规则的解释

mysql - 错误 : token "@" is not valid in preprocessor expressions

php - undefined variable : categories in blade file