这背后的目的是让我能够从通过其他两个表的 INNER JOIN 形成的表中提取数据。
我已成功将关税名称映射到用户名。但我想要做的是能够从这个通过 INNER JOIN 在 android studio 的文本字段中创建的新表返回数据。
目前我主要关心的是找出能够返回数据的正确查询。我试过研究这个但没有运气/ 我有 2 个数据库。 useraccount 数据库和tariff 数据库。
useraccount 数据库由以下列组成:
身份证
姓名
姓
电子邮件地址
zip
城市
电话号码
用户名
密码
确认密码
关税
我的 Tariff 数据库由以下列组成:
身份证 姓名
我使用 INNER JOIN 连接了两个表,并将用户名列与关税名称列链接起来,基本上,我最终得到了这样一个表:
用户名|费率
代码如下:
$query = "SELECT useraccount.Username, tariff.Name as tariffs
FROM useraccount
INNER JOIN tariff ON useraccount.tariffs = tariff.id";
$result = mysqli_query($conn,$query);
if($result->num_rows){
while($row = $result ->fetch_object()){
echo "{$row->Username} ({$row->tariffs}) <br>";
}
}else{
echo "No results";
}
$query2 = "SELECT";
$result2 = mysqli_query($conn,$query2);
问题:
如何访问结果集的列?
This image shows the result of the execution of the PHP file
最佳答案
将两个表连接在一起并不会创建第三个表,而是根据两个表的合并记录创建一个结果集。在您的代码示例中,您已经可以访问用户帐户和关税表中包含的所有数据。要访问此数据,只需修改您的选择语句,使其引用所需的列。您也可以只使用“*”通配符来包含结果集中的所有列。
// Using a wildcard to get all useraccount data.
$query = "SELECT useraccount.*, tariff.Name as tariffs
FROM useraccount
INNER JOIN tariff ON useraccount.tariffs = tariff.id";
$result = mysqli_query($conn,$query);
if($result->num_rows){
while($row = $result ->fetch_object()){
// Reference any user data you want.
echo "{$row->Username} {$row->EmailAddress} {$row->PostCode} ({$row->tariffs}) <br>";
}
}
关于php - 如何从连接表中返回数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40385045/