Laravel:使用 GROUP_CONCAT 和 DISTINCT ON 的 selectRaw
Laravel: selectRaw with GROUP_CONCAT and DISTINCT ON
我正在尝试使用 DISTINCT ON
仅显示一个 drug_code
并将 CONCAT
drug_dosage
显示在另一个 drug_code
.
这是没有 CONCAT 的输出:
$all_drugs = HmsBbrKnowledgebaseDrug::selectRaw('DISTINCT ON (drug_code)
bbr_drug_id,
hospital_id,
drug_code,
drug_name,
drug_dosage,
display_flag'
)
->orderBy('drug_code', 'ASC')
->get();
如您所见,它可以正常工作,但是在添加带有分隔符的 GROUP_CONCAT
后出现错误:
$all_drugs = HmsBbrKnowledgebaseDrug::selectRaw('DISTINCT ON (drug_code)
bbr_drug_id,
hospital_id,
drug_code,
drug_name,
GROUP_CONCAT(drug_dosage SEPARATOR ",") as dosage
display_flag'
)
->orderBy('drug_code', 'ASC')
->get();
我不确定为什么 GROUP_CONCAT
给出了一个不支持的方法错误:
最后一个错误
The get method is not supported for ....
这意味着您正在尝试 get
请求该路线,但在 routes/web.php 中,有 post
对该路线的请求
所以问题可能是这样。
我想尝试执行 post 请求,但您可能刷新了选项卡或其他内容,这会触发 get
请求而不是 post
。所以再次尝试 post 请求并判断错误是否仍然存在?
我正在尝试使用 DISTINCT ON
仅显示一个 drug_code
并将 CONCAT
drug_dosage
显示在另一个 drug_code
.
这是没有 CONCAT 的输出:
$all_drugs = HmsBbrKnowledgebaseDrug::selectRaw('DISTINCT ON (drug_code)
bbr_drug_id,
hospital_id,
drug_code,
drug_name,
drug_dosage,
display_flag'
)
->orderBy('drug_code', 'ASC')
->get();
如您所见,它可以正常工作,但是在添加带有分隔符的 GROUP_CONCAT
后出现错误:
$all_drugs = HmsBbrKnowledgebaseDrug::selectRaw('DISTINCT ON (drug_code)
bbr_drug_id,
hospital_id,
drug_code,
drug_name,
GROUP_CONCAT(drug_dosage SEPARATOR ",") as dosage
display_flag'
)
->orderBy('drug_code', 'ASC')
->get();
我不确定为什么 GROUP_CONCAT
给出了一个不支持的方法错误:
最后一个错误
The get method is not supported for ....
这意味着您正在尝试 get
请求该路线,但在 routes/web.php 中,有 post
对该路线的请求
所以问题可能是这样。
我想尝试执行 post 请求,但您可能刷新了选项卡或其他内容,这会触发 get
请求而不是 post
。所以再次尝试 post 请求并判断错误是否仍然存在?