一个会员表,一个会员的会员卡表,会员可以拥有多张会员卡,会员卡表与会员表关联的字段为member,需要联合这两个表进行查询,输出的结果需要去掉重复数据,用php实现
时间: 2024-04-12 08:32:14 浏览: 11
你可以使用 SQL 查询语句来实现这个需求,下面是一个示例:
```php
<?php
// 连接数据库
$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("连接数据库失败: " . $conn->connect_error);
}
// 执行查询
$sql = "SELECT DISTINCT members.id, members.name, cards.card_number FROM members INNER JOIN cards ON members.id = cards.member";
$result = $conn->query($sql);
// 输出结果
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "会员ID: " . $row["id"]. ", 会员名: " . $row["name"]. ", 会员卡号: " . $row["card_number"]. "<br>";
}
} else {
echo "没有找到匹配的数据";
}
// 关闭数据库连接
$conn->close();
?>
```
在这个示例中,你需要将 `$servername`, `$username`, `$password` 和 `$dbname` 替换为你的数据库连接信息。然后使用 `mysqli` 类连接到数据库,并执行一个包含 `INNER JOIN` 的查询语句,通过 `DISTINCT` 关键字去除重复数据。最后,使用 `fetch_assoc()` 方法获取每一行的数据并输出。记得在结束后关闭数据库连接。