用php写一个多表查询
时间: 2023-12-29 11:47:42 浏览: 29
好的,以下是一个简单的多表查询示例,使用 PHP PDO 进行数据库连接和查询:
```php
// 数据库连接配置
$host = 'localhost';
$dbname = 'mydatabase';
$username = 'myusername';
$password = 'mypassword';
// 连接数据库
try {
$pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch(PDOException $e) {
echo "连接数据库失败: " . $e->getMessage();
exit();
}
// 构建 SQL 查询语句
$sql = "SELECT users.*, orders.*
FROM users
INNER JOIN orders ON users.id = orders.user_id
WHERE users.status = :status
ORDER BY orders.created_at DESC";
// 预处理 SQL 语句并执行查询
$stmt = $pdo->prepare($sql);
$stmt->bindParam(':status', $status);
$status = 'active';
$stmt->execute();
// 处理查询结果
$results = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($results as $result) {
// 处理每行数据
// ...
}
```
上述示例中,我们查询了两个表 `users` 和 `orders`,并使用 `INNER JOIN` 连接两个表。我们还使用了参数化查询,避免了 SQL 注入攻击的风险。