Php 如何在Laravel 5.2查询中返回自定义文本?
我有两张桌子: qr\U明细表:Php 如何在Laravel 5.2查询中返回自定义文本?,php,mysql,laravel,laravel-5.2,Php,Mysql,Laravel,Laravel 5.2,我有两张桌子: qr\U明细表: id qrcode_id prize_id created_at updated_at 12 1 12 2017-10-06 19:53:10 0000-00-00 00:00:0 id correspond_code qrcode_note created_at updated_at 1 plgt73g X Batch
id qrcode_id prize_id created_at updated_at
12 1 12 2017-10-06 19:53:10 0000-00-00 00:00:0
id correspond_code qrcode_note created_at updated_at
1 plgt73g X Batch 2017-10-06 21:55:11 2017-09-28 08:57:53
2 gs35dn4 Y Batch 2017-10-06 21:55:22 2017-10-04 04:38:50
3 df324f3 X Batch 2017-10-06 21:55:36 2017-10-06 13:29:11
qrcodes表:
id qrcode_id prize_id created_at updated_at
12 1 12 2017-10-06 19:53:10 0000-00-00 00:00:0
id correspond_code qrcode_note created_at updated_at
1 plgt73g X Batch 2017-10-06 21:55:11 2017-09-28 08:57:53
2 gs35dn4 Y Batch 2017-10-06 21:55:22 2017-10-04 04:38:50
3 df324f3 X Batch 2017-10-06 21:55:36 2017-10-06 13:29:11
现在我想,如果我在
qr\u详细信息tableqr\u id
列中获得qrcodes
表id
,那么它将显示文本Yes
,而不是显示No
。我是怎么写的?提前谢谢
到目前为止,我已经尝试过:
$drawOr = DB::table('qr_details')
->leftJoin('qrcodes', 'qr_details.qrcode_id', '=', 'qrcodes.id')
->where('qrcode_id','=', $id)
->get();
dd($drawOr);
它显示一个错误。在select()中使用
$drawOr = DB::table('qr_details')
->select('qr_details.*',
DB::raw("(CASE WHEN qrcodes.id IS NOT NULL THEN 'Yes' ELSE 'No' END) AS somealias"))
->leftJoin('qrcodes', 'qr_details.qrcode_id', '=', 'qrcodes.id')
->where('qrcode_id','=', $id)
->get();
这很简单。您可以在控制器中使用此代码:-
$drawOr = DB::table('qrcodes')
->get();
foreach($drawOr as $key => $draw){
$getqrDeatilCount = DB::table('qr_details')->where('qrcode_id',$draw->id)->count();
if($getqrDeatilCount > 0){
$drawOr[$key]->status = "Yes";
}else{
$drawOr[$key]->status = "No";
}
}
echo "<pre>"; print_r($drawOr);
$drawOr=DB::table('qrcodes')
->get();
foreach($draw或作为$key=>$draw){
$getqrDeatilCount=DB::table('qr_details')->where('qrcode_id',$draw->id)->count();
如果($getqrDeatilCount>0){
$drawOr[$key]->status=“是”;
}否则{
$drawOr[$key]->status=“否”;
}
}
回声“;打印(提款);
现在,我已经创建了一个新的键,即status,它包含“yes”或“no”中的值
之后,您可以根据需要在刀片文件中使用。。
希望有帮助:)您是否遇到了完整性约束错误?为什么不使用雄辩的关系?我真的很难理解这个问题。大概qr\u details
是一个包含一行qrcodes
详细信息的表?id
怎么会不存在呢?@apokryfos如果有人画二维码,那么将填写二维码详情表。这就是为什么qr_明细表只有一行。另一个还没有画出来。@GauravGupta我得到了这个错误。我想这是另一个方向。qrcodes表是基础表,QRU详细信息
是相关表,OP希望查看qrcode
表QRU详细信息
表中是否有条目不需要任何条目。当任何人绘制qrcodes
表的qrcode时,它将填充。->其中('qrcode\u id','=',1)
正在打印是。但是如果我把->放在哪里('qrcode_id','=',2)
那么它是空的。它应该是否
。我想你就快到了。@ChoncholMahmud提供你的表定义和一些相关的样本数据集来生成qrcode_id=2的问题,如果你能在上面添加你的模式和数据,并为我们提供样本数据的链接,那就更好了是的,我正在寻找这种。。谢谢:)