从两个表中选择数据与php mysql中的where条件

时间:2017-01-06 17:20:20

标签: mysql

表1

Workid --- Workname --- Workdetails

w001 --- workname1 --- detail1

w002 --- workname2 --- detail2

表2

Id --- Workid --- Workstartdatetime --- Workstopdate_time

T001 --- w001 --- 2016-12-31 10:00:00 --- 2016-12-31 18:00:00

T001 --- w002 --- 2016-12-30 10:00:00 --- 2016-12-30 18:00:00

Table1和Table2 Workid相同。

我正在从用户那里获得2个输入:

**$Workstartdatetime = "2016-12-31 12:00:00";**

**$Workstopdate_time = "2016-12-31 17:00:00";**

我的查询是,如果用户提供的$Workstartdatetime$Workstopdatetime不在表格WorkstartdatetimeWorkstopdatetime Table1 Workid之间,则会显示。

例如,我们已经为变量指定了值,因此只显示workid w002

如何在PHP中为此编写查询

谢谢

1 个答案:

答案 0 :(得分:0)

您可以使用INNER JOIN,它会通过您提供的密钥加入表格,并且您可以在WHERE上设置条件,您希望在用户输入日期之间有效日期。< / p>

我为您创建了 SQLFiddle

有关 JOIN 的更多信息。

<强>的MySQL

SELECT
  t1.workid
FROM
 table1 t1
INNER JOIN
  table2 t2
ON
  t1.workid = t2.workid
WHERE
  t2.Workstartdatetime > '".$$Workstartdatetime."' 
AND 
  t2.Workstopdate_time < '".$Workstopdate_time."'