thinkphp 查询2个不同字段不同ID
时间: 2024-10-25 10:15:52 浏览: 12
在ThinkPHP中,如果你想同时查询两个不同字段并且它们属于不同的表单,你可以使用JOIN关键字来连接这两个关联表。假设你有两个表,table1有id为field_id1和另一个字段field_data1,而table2有不同的id field_id2,对应字段为field_data2。以下是查询示例:
```php
$join = 'LEFT JOIN table2 ON table1.id = table2.field_id1';
$data = Db::name('table1')->field(['table1.field_data1', 'table2.field_data2'])->where('table1.field_id1', $id)->{$join}->select();
// 如果你想根据不同的表id2来查询
$data = Db::name('table1')
->leftJoin('table2', 'table1.id = table2.field_id1 AND table2.field_id2 = :id2', 'left')
->field(['table1.field_data1', 'table2.field_data2'])
->param(['id2' => $anotherId])
->select();
```
在这个例子中,`Db::name()`是ThinkPHP的数据访问层,`.field()`指定了需要返回的字段,`.where()`用于设置查询条件,`.leftJoin()`则是左连接表并指定关联条件。
阅读全文