这天,我使用灯塔图书馆GraphQL
框架研究了Laravel
。
我试图做一种SELECT Query
。
因此,我想知道GraphQL是否可以在下面的SQL查询中进行选择
SELECT * FROM TABLE_A WHERE type=1 AND chart_id=(SELECT id FROM TABLE_B WHERE phone='0000~~')
我希望客户首先从该查询中获得结果。
SELECT id FROM TABLE_B WHERE phone='0000~~'
然后执行第二次查询,我想我可以得到结果。
但是我不知道我可以从1个请求中得到结果。谢谢。
答案 0 :(得分:1)
您可以尝试关注
$phoneNumber = '0000~~';
$data = DB::table('tableA')->where('type',1)
->whereIn('chart_id',function($query) use ($phoneNumber) {
$query->select('id')
->from('tableB')
->where('phone', '=',$phoneNumber);
})->get();
如果tableA
和tableB
之间存在关联,则可以执行以下操作
TableA::where('type',1)
->whereHas('tableBRelationshipName', function ($q) use ($phoneNumber) {
$q->select('id')
$q->where('phone','=',$phoneNumber);
})->get();