问题
I am trying to convert my mysql query logic to Laravel query builder. I I have no Idea how to convert it as laravel query.
my query logic is
SELECT id,name,
case
when visibility_status = '1'
then 'Visible'
when visibility_status = '0'
then 'Invisible'
end as visibility_status FROM `flowers`
generally I write a select query using query builder but cant implement above logic
$result = DB::table('flowers')
->select('flowers.id as id', 'flowers.name as name',
'flowers.visibility_status as visibility_status');
回答1:
Try This
$users = DB::table('flowers')
->select(["id", "name",
DB::raw("
case
when visibility_status = '1'
then 'Visible'
when visibility_status = '0'
then 'Invisible'
end as visibility_status
")])->get();
Here is the reference for it http://laravel.com/docs/4.2/queries#raw-expressions
来源:https://stackoverflow.com/questions/30000585/convert-mysql-query-logic-to-laravel-query-builder