繁体   English   中英

如何从连接表中返回数据

[英]How to return data from a joined table

这背后的目的是让我能够从通过另外两个表的INNER JOIN形成的表中提取数据。

我已成功将关税名称映射到用户名。 但我想要做的是能够从这个通过INNER JOIN在android studio的文本字段中创建的新表中返回数据。

我目前主要担心的是确定能够返回数据的正确查询。 我试过研究这个,但没有运气/我有2个数据库。 useraccount数据库和关税数据库。

useraccount数据库由以下列组成:

ID名称

电子邮件地址
邮编

电话号码
用户名
密码
确认密码关税

我的关税数据库包含以下列:

ID名称

我已经使用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);

题:

如何访问结果集的列?

此图显示了PHP文件的执行结果

将两个表连接在一起不会创建第三个表,但会从两个表的组合记录中创建结果集 在您的代码示例中,您已经可以访问useraccounts和关税表中包含的所有数据。 要访问此数据,只需修改select语句,使其引用所需的列。 您也可以使用'*'通配符来包含结果集中的所有列。

 // 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>";
    }
}

您需要加入关税ID上的用户帐户ID:

 $servername = "localhost";
 $username = "username";
 $password = "password";
 $dbname = "myDB";

 // Create connection
 $conn = new mysqli($servername, $username, $password, $dbname);
 // Check connection
 if ($conn->connect_error) {
   die("Connection failed: " . $conn->connect_error);
 } 

 $sql = "SELECT useraccount.Username, tariff.Name FROM useraccount INNER JOIN tariff ON useraccount.id = tariff.id";
 $result = $conn->query($sql);

 if ($result->num_rows > 0) {
      // output data of each row
     while($row = $result->fetch_assoc()) {
    echo "Username: " . $row["username"]. " - Tarrif: " . $row["name"]. "<br>";
}
} else {
    echo "0 results";
}
$conn->close();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM