繁体   English   中英

基于id连接MySQL中的两个表

[英]joining two tables in MySQL based on id

基本上,我希望能够联接两个表,以便能够从某个用户获取ID,从而将预订与用户ID连接起来。

表像这样的“ tbl_mem”存在

id      username       password    email  
 1       XXXXX            XXXX      XXXX

和“ tbl_booking”

BookID    id    date   time  Confirmed
XXXX     XXX      XXX    XXX    XXXX

基本上我想要一张桌子有这个

BookID   id   date   time   Confirmed
 1      XXXX    XXX    XXXX   XXXXX

我现在有这样的SQL查询

$query = mysqli_query($con,"SELECT tbl_mem.id, BookID, date, time, Confirmed
FROM tbl_mem
LEFT JOIN tbl_booking
ON tbl_mem.id=tbl_booking.id");

但老实说,我不知道我在网站的这一部分正在做什么,我将在哪里放置sql查询,并且一切正确吗?

您的tbl_mem可以,但是tbl_booking应该像这样:

id   tbl_mem_id   date    confirmed
1    1            xxxx    xxxx

我使用列日期,因为您可以将日期和时间都保存在datetime类型的一列中。 BookID也是tbl_booking的ID。

现在,您可以像这样查询它:

$query = mysqli_query($con,"SELECT tbl_mem.id, tbl_booking.id as BookID, tbl_booking.date, tbl_booking.confirmed
FROM tbl_mem
LEFT JOIN tbl_booking
ON tbl_mem.id=tbl_booking.id
WHERE tbl_mem.id = 1");

编辑:将tbl_booking.id重命名为BookID以便在结果集中进行澄清。

至于要放置查询的部分,我想在要显示或处理数据之前的某个位置。

现在,您可以像这样查询它:

$query = mysqli_query($con,"SELECT tb.BookID as BookID, tm.id as id, tb.date as date, tb.time as time, tb.Confirmed as Confirmed FROM tbl_mem as tm LEFT JOIN tbl_booking as tb ON tm.id = tb.id");

暂无
暂无

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

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