Привет. Я пытаюсь объединить две таблицы с одинаковым значением столбца, равным t1.Bid и t2.id. Затем, когда они объединяются, я хотел отобразить все адреса, статус = активный, адрес совпадает с адресомBid = 2001, конфликт между начальным и конечным диапазоном Bid = "2001".Я думаю, что есть проблема в моем запросе, я новичок, поэтому любой совет будет очень признателен, спасибо.
tbl Адрес:
id (VARCHAR(255))
Address (LONGTEXT)
startdate (LONGTEXT)
enddate (LONGTEXT)
Bid (LONGTEXT)
tblbook:
id (VARCHAR(255))
STATUS (LONGTEXT)
tblAddress
id Address startdate enddate Bid
x12es1 Place1 2018-08-27 2018-08-30 2001
x12fs2 Place1 2018-08-28 2018-08-30 2002
x1sd13 Place1 2018-08-27 2018-09-29 2003
x12f14 Place4 2018-09-17 2018-09-18 2004
tblbook
id Status
2001 Active
2002 Active
2003 Active
2004 Active
My output doesnt display anything
Bid id Status startdate enddate Address
Desired Output
will only display those who has a conflict with bid 2001 start date and endate
Bid id Status startdate enddate Address
2002 2002 Active 2018-08-28 2018-08-30 Place1
2003 2003 Active 2018-08-27 2018-09-29 Place1
Query
SELECT t2.Bid,t1.id,t1.Status,t2.startdate,t2.endddate,t2.Address
FROM tblbook t1 INNER JOIN tblAddress t2
ON t1.id =t2.Bid
WHEREt1.Status = 'Active' AND
@check_period_start BETWEEN STR_TO_DATE(t2.startdate,'%Y-%m-%d')AND STR_TO_DATE(t2.enddate,'%Y-%m-%d')
AND @check_period_end BETWEEN STR_TO_DATE(t2.startdate,'%Y-%m-%d')AND STR_TO_DATE(t2.enddate,'%Y-%m-%d')