2017-08-16 132 views
1
CREATE TABLE `appointments` (
`id` int(11) NOT NULL, 
`app_date` date NOT NULL, 
`mobile` varchar(16) NOT NULL, 
`time` time NOT NULL, 
`duration` int(3) NOT NULL, 
`services` varchar(256) NOT NULL, 
`status` varchar(32) NOT NULL 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

INSERT INTO `appointments` (`id`, `app_date`, `mobile`, `time`, `duration`, 
`services`, `status`) VALUES 
(11, '2017-09-28', '991694', '11:00:00', 1, 'PP', 'Booked'), 
(12, '2017-09-28', '991694', '12:00:00', 1, 'FT', 'Booked'), 
(13, '2017-09-29', '991694', '10:00:00', 1, 'HC;FT', 'Booked'), 
(14, '2017-09-11', '991694', '11:00:00', 1, 'T;W;HS;PP', 'Booked'); 

DELETE from appointments where 'mobile' = '991694' and 'app_date' = 
'2017-09-28' and 'time' = '11:00:00' 

是不是刪除任何行?返回0行受影響。請建議這裏出了什麼問題。MySQL刪除日期和時間比較

此外,我試圖與 從預約DELETE其中 '移動'= '991694' 和 'app_date'=日期 '2017年9月28日' 和 '時間'=時間'11:00:00'

+0

請詢問的問題在這裏 – Rahul

+2

@Rahul究竟是什麼不對的職位,除了格式化前仔細閱讀適當計算器方針?它顯示了一個清晰的例子,用代碼來創建表格,其中包含錯誤和問題,並暗示預期結果應該是什麼。這遠遠超過我們獲得的「請寫我的代碼」帖子的90%。事實上,我能夠將這篇文章複製並粘貼到SQL中,並以相同的結果運行它,這使得它比大多數問題好幾年。 –

+1

熱門建議1:始終將日期和時間存儲爲一個實體。重要提示2:切勿存儲逗號/冒號/分號分隔的數據 – Strawberry

回答

3

刪除列名前的報價。您不檢查行上的值,您是比較字符串。請注意,在MySQL

' != ` 

這應該工作:

DELETE from appointments where mobile = 991694 and app_date = '2017-09-28' and time = '11:00:00'