Как конвертировать SQL в Laravel Query - PullRequest
0 голосов
/ 06 мая 2019

Я хочу создать что-то с помощью столбца псевдонимов, как показано ниже, но я не знаю, как сделать это запросом Laravel.Вот мой SQL.

SELECT
    d.*,
    d.damaged_building,
    d.total_victim 
FROM
    (
        SELECT
            delete_flg,
            damage_id,
            create_time,
            reg_user_name,
            municipality_id,
            report_time,
            district,
            village,
            disaster_type,
            cause_of_disaster,
            (
                bd_major_damage1 + bd_minor_damage1 + bd_major_damage2 + bd_minor_damage2 + bd_major_damage3 + bd_minor_damage3
            )
            as damaged_building,
            (
                hi_hd_deaths + hi_hd_serious_injuries + hi_hd_minor_injuries + hi_hd_missing_persons + hi_hd_sick_persons
            )
            as total_victim 
        FROM
            d_damage 
        WHERE
            delete_flg = 0 
        ORDER BY
            create_time DESC
    )
    d

Я хочу перевести это в Eloquent из Laravel Query Builder для использования в моем контроллере.

Ответы [ 2 ]

0 голосов
/ 06 мая 2019

Вы можете попробовать с этим

DB::table('d_damage')
->where('delete_flg',0)
->orderBy('create_time', 'desc')
->select('delete_flg', 'damage_id', 'create_time', 'reg_user_name', 'municipality_id', 'report_time', 'district', 'village', 'disaster_type', 'cause_of_disaster',DB::raw('(bd_major_damage1 + bd_minor_damage1 + bd_major_damage2 + bd_minor_damage2 + bd_major_damage3 + bd_minor_damage3) as damaged_building'),DB::raw('(hi_hd_deaths + hi_hd_serious_injuries + hi_hd_minor_injuries + hi_hd_missing_persons + hi_hd_sick_persons) as total_victim'))
->get();

это может быть не совсем, но почти

0 голосов
/ 06 мая 2019

Если бы вы были мной, вы бы просто изучали SQL-запросы, так как вы привносите их куда угодно, вы можете изучить множество фреймворков / инструментов, а не тратить свое время на Laravel. В любом случае, вы все равно можете использовать sql запросы в laravel, используя необработанные выражения: https://laravel.com/docs/5.8/queries#raw-expressions

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...