sql >> データベース >  >> RDS >> Mysql

この複雑なクエリをcodeigniterでどのように記述しますか?

    $this->db->query() 関数は、成功または失敗した場合にのみTRUE/FALSEを返します。データベースの結果セットを返したり、クエリタイマーを設定したり、バインドデータをコンパイルしたり、デバッグ用にクエリを保存したりすることはありません。クエリを送信するだけです。ほとんどのユーザーがこの機能を使用することはめったにありません。

    この方法を試してください:-

    $sql  = "SELECT 
            a.ar, 
            a.jabatan, 
            COUNT(*) AS JumlahWPBaru, 
            SUM( 
                CASE WHEN a.no_shim IS NOT NULL 
                THEN 1 
                WHEN a.no_shim IS NULL 
                THEN 0 
                END ) AS JumlahHimbauan
            FROM (
    
            SELECT 
                a.ar, 
                c.jabatan, 
                a.npwp, 
                a.kpp, 
                a.cab, 
                a.namawp, 
                b.kd_shim, 
                b.no_shim, 
                b.tgl_shim
            FROM mfwpbudi a
            LEFT JOIN tb_shimbauan b ON ( a.npwp = b.npwp ) 
            LEFT JOIN easystp_user c ON ( SUBSTR( a.ar, 1, 9 ) = c.id_user ) 
            WHERE a.tanggal_daftar >  '2013-12-31'
            AND c.jabatan =  '05E'
            ) AS a
            GROUP BY a.ar";
    
    $query = $this->db->query($sql);
    $result = $query->result_array();
    return $result;
    



    1. SQL Server(TSQL)-ステートメントを並行して実行することは可能ですか?

    2. PHPとmySQL:2038年バグ:それは何ですか?それを解決する方法は?

    3. SQLでvarchar列を複数の値として分割するにはどうすればよいですか?

    4. mysqlテーブルの列のデフォルトを変更するにはどうすればよいですか?