表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
不在表格Workstartdatetime
和Workstopdatetime Table1 Workid
之间,则会显示。
例如,我们已经为变量指定了值,因此只显示workid w002
。
如何在PHP中为此编写查询
谢谢
答案 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."'