亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

  • 站長(zhǎng)資訊網(wǎng)
    最全最豐富的資訊網(wǎng)站

    laravel中DB::raw的用法是什么

    在laravel中,“DB::raw()”方法用于復(fù)雜的sql查詢,該方法能夠?qū)⒉樵兊降慕Y(jié)果集當(dāng)成一個(gè)臨時(shí)表,然后使用laravel的查詢構(gòu)造器語(yǔ)法進(jìn)行分頁(yè)處理,語(yǔ)法為“DB::raw('函數(shù)或者字段');”。

    laravel中DB::raw的用法是什么

    本文操作環(huán)境:Windows10系統(tǒng)、Laravel6版、Dell G3電腦。

    laravel中DB::raw的用法是什么

    在項(xiàng)目中遇到一個(gè)問(wèn)題,復(fù)雜的sql查詢,用laravel的查詢構(gòu)造器,非常的不方便,各種查詢條件拼接一長(zhǎng)串拼得腦瓜疼;然后想使用原生的sql語(yǔ)句來(lái)查詢,然后又使用不了laravel的paginate()分頁(yè)方法;這時(shí)候DB::raw()方法就派上用場(chǎng)了!語(yǔ)法的原理就是把你查詢的結(jié)果集當(dāng)成一個(gè)臨時(shí)表,然后在使用laravel的查詢構(gòu)造器語(yǔ)法進(jìn)行分頁(yè)處理;

    例1:

    $users = DB::table('users')                    ->select(DB::raw('count(*) as user_count, status'))                    ->where('status', '<>', 1)                    ->groupBy('status')                    ->get();

    例2:

     DB::table('someTable') ->selectRaw('count(*), min(some_field) as someMin, max(another_field) as someMax') ->get();

    例3:

    DB::table('someTable')->select( array(         DB::raw('min(some_field) as someMin'),         DB::raw('max(another_field) as someMax'),         DB::raw('COUNT(*) as `count`')     ) )->get()

    例4:

    SELECT    (CASE WHEN (gender = 1) THEN 'M' ELSE 'F' END) AS gender_text    FROM users; $users = DB::table('users')   ->select(DB::raw("   name,   surname,     (CASE WHEN (gender = 1) THEN 'M' ELSE 'F' END) as gender_text") );

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)