如何从codeigniter中的行数据关系制作列数据
How to make column data from row data relationship in codeigniter
我在 codeigniter 查询中有一些像这样的 table
regist_header 列:
ID,
request_id,
regist_number,
created_date,
等等
并且 table 对应 activity regist_header,像这样
document_status 列:regist_header_id、状态、日期
这是我的 regist_header
regist_header
这是我的 document_status document_status
从这种关系中,我想在每一行中制作这样的数据
编号 | request_id | registration_number | submit_date | approve_date |激活日期
谢谢
根据 document_status 数据,您似乎有多个相同状态的条目。那么你想显示最新的记录还是最早的记录?根据最新记录,该查询可以帮助:
select rh.id, rh.request_id, rh.registration_number, ds.submit_date, ds.approve_date, ds.activation_date
from regist_header rh
left
join (
select regist_header_id,
max(case when status = 'submit' then max_date end) as submit_date,
max(case when status = 'approve' then max_date end) as approve_date,
max(case when status = 'activation' then max_date end) as activation_date
from document_status ds
group by regist_header_id
)ds
on rh.id = ds.regist_header_id
我在 codeigniter 查询中有一些像这样的 table
regist_header 列: ID, request_id, regist_number, created_date, 等等
并且 table 对应 activity regist_header,像这样
document_status 列:regist_header_id、状态、日期
这是我的 regist_header
regist_header
这是我的 document_status document_status
从这种关系中,我想在每一行中制作这样的数据
编号 | request_id | registration_number | submit_date | approve_date |激活日期
谢谢
根据 document_status 数据,您似乎有多个相同状态的条目。那么你想显示最新的记录还是最早的记录?根据最新记录,该查询可以帮助:
select rh.id, rh.request_id, rh.registration_number, ds.submit_date, ds.approve_date, ds.activation_date
from regist_header rh
left
join (
select regist_header_id,
max(case when status = 'submit' then max_date end) as submit_date,
max(case when status = 'approve' then max_date end) as approve_date,
max(case when status = 'activation' then max_date end) as activation_date
from document_status ds
group by regist_header_id
)ds
on rh.id = ds.regist_header_id