如何在Laravel中使用查询mysql concat?

时间:2019-06-15 06:43:01

标签: php mysql laravel

我想在laravel的查询生成器中应用concat mysql。

这是我的mysql语法:

SET @sql = NULL;
SELECT
 GROUP_CONCAT(
  DISTINCT
    CONCAT(
        'max(if(date="', 
        date, 
        '", exam, null)) as "',
        date,
        '"'
    )
 ) into @sql
FROM tabelname;
SET @sql = CONCAT("SELECT id_student, ",
                    @sql, " FROM tabelname GROUP BY id_student");

PREPARE stmt FROM @sql;
    EXECUTE stmt;
    DEALLOCATE PREPARE stmt;

我尝试使用DB::raw,但遇到错误。

1 个答案:

答案 0 :(得分:0)

您正在尝试的事情称为存储过程。是的,在PHP中还可以使存储过程用于CURD操作。但是我不确定您应该在laravel ERM中执行此过程。然后尝试根据模型及其关系管理查询。否则,如果您没有开始在Laravel中创建项目,则应该使存储过程仅在PHP中调用这些过程。