php - PHP / HTML 使用两个表并获取名称以在 html 表中使用
问题描述
我有一个小问题,现在我正在做一个小票系统。
我有一个表格,其中显示了与该用户相关的可用票证。
示例:用户 Nick 有 3 张票,它会像这样显示。
+-----------+------------+---------+
| Ticket ID | Created by | Comment |
+-----------+------------+---------+
| 2 | 4 | Text | <- Ticket 1
+-----------+------------+---------+
| 3 | 2 | Text | <- Ticket 2
+-----------+------------+---------+
| 5 | 3 | Text | <- Ticket 3
+-----------+------------+---------+
现在,我在“创建者”列中只有用户 ID,但我希望显示用户名。
我有两个数据库表,所有用户都保存在表 1 中,票保存在表 2 中,现在我需要一个查询来获取用户 ID 4、2、3 的用户名,以在 HTML 表中显示用户名,但我没有不知道该怎么做。
我当前的查询如下所示:
$pdo->query("BEGIN");
$t = ("SELECT * FROM ticket WHERE uid='$param'");
$pdo->query("COMMIT");
为了解释“uid”,我使用 uid 获得与该玩家相关的门票。
//编辑
这不完全是我正在寻找的东西,也许我解释得有点错误。
这是我的票表: 票表
第一行:票证 ID 第二行:UID 标识为票证创建的用户第三行:创建票证的用户的 ID。
现在我有用户表: 用户表
第一行:标识用户第三行:是用户的用户名
现在我有一个 html 表(这只是表的一小部分): HTML Table
第一行:创建该票证的用户的用户 ID 第二行:票证 ID
现在它显示为 UID 76561198073236987 创建的所有票证,而不是只显示创建票证的用户的 ID,我想显示用户名。
解决方案
使用 SQL 接头。请参阅下面的查询
"SELECT * FROM ticket
LEFT JOIN user ON user.uid= ticket.uid WHERE ticket.uid='$param'";
这将返回用户详细信息以及票证详细信息。
无论用户是否可用,都将收到票务详细信息
有关左加入的更多信息:https ://www.w3schools.com/sql/sql_join_left.asp
如果您只想要包含用户详细信息的票证,您可以使用内部加入或加入。请参阅下面的查询
"SELECT * FROM ticket
INNER JOIN user ON user.uid= ticket.uid WHERE ticket.uid='$param'";
这将返回用户详细信息以及票证详细信息。
如果用户不可用,将不会收到门票详细信息
有关内部加入的更多信息:https ://www.w3schools.com/sql/sql_join_inner.asp
推荐阅读
- python - 无法使用自定义序列化程序反序列化自引用外键
- db2 - 如何进行行级锁定以确保 db2 过程中的 select 和 update 语句线程安全?
- python - 具有自定义转换器类的管道在使用 Featureunion 的完整管道中不起作用
- r - 从 Ubuntu 16.04 访问 RPlumber API 时出现“异常”
- python - 在分类案例研究中识别冗余列/变量
- keras - Keras softmax 层返回 one-hot 编码数组
- angular - 如何在不丢失活跃订阅者的情况下更新 Observable?
- javascript - HTML IFrame 不允许下载文件
- arrays - Spring Annotations - 使用数组属性配置
- java - Java 概念 后期版格式化部分