我在MySQL数据库中有一个'DateTime'列(Y-m-d H:i:s)。要执行我想要执行的查询,我需要将日期和时间分开,并将每个查询放入自己的列中。我试图在MySQL中使用'UPDATE'来创建一个新的'Date'和'Time'列来放入数据。我尝试的所有内容都将数据作为全零放入列中。如何将这些数据分成各自的列?
编辑:现在查询是查看我在某一天的约会。使用datetime列,当我进行查询时,让我们说2015-08-19 @ 1:00 PM它只返回该确切日期和时间的约会。我希望查询能够在不考虑时间的情况下恢复所有约会。
这是我的SELECT语句
$appt_date = date('Y-m-d H:i:s', strtotime($appt_date));
$query = $mysqli->prepare("
SELECT set_date
, branch
, appt_date
, employee
, fname
, lname
, last_four
, phone
, city
, state
, zip
FROM appointments
WHERE set_date BETWEEN '".$from."' AND '".$to."'
AND set_date LIKE CONCAT('%', ?, '%')
AND branch LIKE CONCAT('%', ?, '%')
AND appt_date = (?)
AND employee LIKE CONCAT('%', ?, '%')
AND fname LIKE CONCAT('%', ?, '%')
AND lname LIKE CONCAT('%', ?, '%')
AND last_four LIKE CONCAT('%', ?, '%')
AND phone LIKE CONCAT('%', ?, '%')
AND city LIKE CONCAT('%', ?, '%')
AND state LIKE CONCAT('%', ?, '%')
AND zip LIKE CONCAT('%', ?, '%')
ORDER
BY set_date ASC
");
答案 0 :(得分:1)
SELECT '2015-08-19 01:00:00' BETWEEN '2015-08-19' AND '2015-08-20' x;
+---+
| x |
+---+
| 1 |
+---+
SELECT '2015-08-20 01:00:00' BETWEEN '2015-08-19' AND '2015-08-20' x;
+---+
| x |
+---+
| 0 |
+---+