我如何将 postgres 查询转换为查询构建器格式 codeigniter?

礼萨普拉塔玛

我想从许多表中选择数据这里是如何打开这个的代码

SELECT a.*, b.penyusun, c.keywords 
                FROM cb_monograf a 
                INNER JOIN (
                select row_number() over (order by id_monograf) nomer, id_monograf, string_agg(id_penyusun::varchar,'-') penyusun
                  from cb_penyusun_monograf
                 group by id_monograf
                ) b ON a.id_monograf = b.id_monograf
                INNER JOIN (
                select row_number() over (order by id_monograf) nomer, id_monograf, string_agg(id_keywords::varchar,'-') keywords
                  from cb_keywords_monograf
                 group by id_monograf
                ) c ON a.id_monograf = c.id_monograf
                WHERE a.jenis = 'buku'

变成某种这种格式

            $this->db->select('a.*,b.penyusun')
                ->from('cb_monograf a')
                ->join("($subquery1) b","a.id_monograf = b.id_monograf","inner")
                ->where('jenis', $param_type);
Ukuser32

你离得不远了 - 试试这个:

// Just to keep code a bit clearer
$db = $this->db;

// Firstly build the selects
$db->select('row_number() over (order by id_monograf) nomer, id_monograf, string_agg(id_penyusun::varchar,'-') penyusun')
$db->group_by('id_monograf');
$q1 = $db->get_compiled_select('cb_penyusun_monograf');

$db->select('row_number() over (order by id_monograf) nomer, id_monograf, string_agg(id_keywords::varchar,'-') keywords');
$db->group_by('id_monograf');
$q2 = $db->get_compiled_select('cb_keywords_monograf');

// Final query
$db->select('a.*, b.penyusun, c.keywords');
$db->join("($q1) b",'a.id_monograf = b.id_monograf','inner');
$db->join("($q2) c",'a.id_monograf = c.id_monograf','inner');
$db->where('a.jenis','buku');
$data = $db->get('cb_monograf a')->result_array(); // or row_array()

请注意,如果您的 postgresl 支持 USING()(并且可能也可以删除内部),则可以改进此查询:

$db->select('a.*, b.penyusun, c.keywords');
$db->join("($q1) b",'id_monograf'); // inner may also not be required
$db->join("($q2) c",'id_monograf'); // inner may also not be required
$db->where('a.jenis','buku');
$data = $db->get('cb_monograf a')->result_array(); // or row_array()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将查询转换为Codeigniter

来自分类Dev

将SQL查询转换为Codeigniter查询

来自分类Dev

如何将Postgres SQL转换为MySQL查询

来自分类Dev

将查询从SQL转换为CodeIgniter

来自分类Dev

将 postgres sql 查询转换为 oracle

来自分类Dev

如何将此 SQL 查询转换为 Codeigniter Active Record?

来自分类Dev

将我的sql查询转换为活动记录查询codeigniter

来自分类Dev

如何将 JSON 数据从 postgres 转换为不同的格式

来自分类Dev

将Laravel查询构建器转换为雄辩的构建器

来自分类Dev

将原始查询转换为Laravel查询构建器

来自分类Dev

将 mysql 查询转换为查询构建器

来自分类Dev

我想将普通的mysql查询转换为codeigniter

来自分类Dev

将SQL查询转换为Codeigniter活动记录

来自分类Dev

将Sql查询转换为CodeIgniter活动记录

来自分类Dev

将 mysql 查询转换为 CodeIgniter $query->row

来自分类Dev

我如何将字符串类型转换为整数-Postgres?

来自分类Dev

我们如何将 json 列表转换为 postgres 中的行?

来自分类Dev

从Oracle查询将keep density_rank转换为Postgres

来自分类Dev

将 sqlite3 查询转换为 postgres

来自分类Dev

将mysql查询转换为postgres时出错

来自分类Dev

Laravel 5.5:将查询构建器转换为 eloquent

来自分类Dev

如何在Postgres中将查询结果转换为JSON对象

来自分类Dev

如何将SQL查询的结果转换为CSV格式

来自分类Dev

如何将SQL Union转换为Codeigniter方式

来自分类Dev

将包含case语句的MySql查询转换为Codeigniter活动记录查询

来自分类Dev

将包含案例语句的MySql查询转换为Codeigniter活动记录查询

来自分类Dev

Mysql 查询转换为 Codeigniter

来自分类Dev

我如何将FullCalendar与Codeigniter集成

来自分类Dev

CodeIgniter,如何将多个查询从模型返回到控制器?

Related 相关文章

  1. 1

    将查询转换为Codeigniter

  2. 2

    将SQL查询转换为Codeigniter查询

  3. 3

    如何将Postgres SQL转换为MySQL查询

  4. 4

    将查询从SQL转换为CodeIgniter

  5. 5

    将 postgres sql 查询转换为 oracle

  6. 6

    如何将此 SQL 查询转换为 Codeigniter Active Record?

  7. 7

    将我的sql查询转换为活动记录查询codeigniter

  8. 8

    如何将 JSON 数据从 postgres 转换为不同的格式

  9. 9

    将Laravel查询构建器转换为雄辩的构建器

  10. 10

    将原始查询转换为Laravel查询构建器

  11. 11

    将 mysql 查询转换为查询构建器

  12. 12

    我想将普通的mysql查询转换为codeigniter

  13. 13

    将SQL查询转换为Codeigniter活动记录

  14. 14

    将Sql查询转换为CodeIgniter活动记录

  15. 15

    将 mysql 查询转换为 CodeIgniter $query->row

  16. 16

    我如何将字符串类型转换为整数-Postgres?

  17. 17

    我们如何将 json 列表转换为 postgres 中的行?

  18. 18

    从Oracle查询将keep density_rank转换为Postgres

  19. 19

    将 sqlite3 查询转换为 postgres

  20. 20

    将mysql查询转换为postgres时出错

  21. 21

    Laravel 5.5:将查询构建器转换为 eloquent

  22. 22

    如何在Postgres中将查询结果转换为JSON对象

  23. 23

    如何将SQL查询的结果转换为CSV格式

  24. 24

    如何将SQL Union转换为Codeigniter方式

  25. 25

    将包含case语句的MySql查询转换为Codeigniter活动记录查询

  26. 26

    将包含案例语句的MySql查询转换为Codeigniter活动记录查询

  27. 27

    Mysql 查询转换为 Codeigniter

  28. 28

    我如何将FullCalendar与Codeigniter集成

  29. 29

    CodeIgniter,如何将多个查询从模型返回到控制器?

热门标签

归档