|
|
|
การลบข้อมูล จาก วันที่ xx-xx-xx เวลา xx-xx-xx ถึง วันที่ xx-xx-xx เวลา xx-xx-xx คำสั่งประมาณไหนคับ |
|
|
|
|
|
|
|
ถ้าเก็บเป็น Date Time จะบอกว่าง่ายมากครับ ใช้ BETWEEN ได้เลยครับ
|
|
|
|
|
Date :
2012-11-27 14:07:22 |
By :
mr.win |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือในตารางเดียวเก็บ ทั้งสองอย่างเลยคับ ผมลองใช้ between แล้วคับ
|
|
|
|
|
Date :
2012-11-27 14:15:42 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (SQL)
DELETE FROM table_name
WHERE some_column
BETWEEN value1 AND value2
|
|
|
|
|
Date :
2012-11-27 15:35:50 |
By :
gibson |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คำสั่ง sql คุณเป็นยังไงหรอครับเอามาดูหน่อย
|
|
|
|
|
Date :
2012-11-27 16:02:06 |
By :
gibson |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
รูปแบบวันที่ในฐานข้อมูลควรจะเป็น ปี-เดือน-วัน ครับ
2012-11-27 16:08:00
|
|
|
|
|
Date :
2012-11-27 16:09:28 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
คือเค้าเก็บมาในรูปแบบนี้แล้วคับ ไม่สามารถเปลียนได้คับ เพราะข้อมูลมีส่วนเชื่อมโยงกันคับ
|
|
|
|
|
Date :
2012-11-27 16:15:30 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ผมคงลืมดู ทูไน โชว์ แน่เลย
|
|
|
|
|
Date :
2012-11-27 16:17:07 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แฮ่ะ ๆ เดี๋ยวผมลองเขียน ครับ
|
|
|
|
|
Date :
2012-11-27 16:20:44 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใครพอมีแนวทาง เสนอผมหน่อยคับ
|
|
|
|
|
Date :
2012-11-27 16:29:49 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ลองเอา sql ไปเทสดูใน phpmyadmin ก่อนครับว่าได้เปล่าถ้าได้เเสดงว่า sql เราถูกเเล้วน่ะน่าจะผิดที่จุดอื่นครับ
ลองเเบนี้ยังครับ
delete from person_dmht_screen_summary
where
last_screen_datetime >= '03-09-2555 10:23:51'
and
last_screen_datetime <= '28-09-2555 14:50:15'
|
ประวัติการแก้ไข 2012-11-27 16:56:27
|
|
|
|
Date :
2012-11-27 16:32:42 |
By :
gibson |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Code (PHP)
ลองเลือกระหว่าง '2555-09-01 00:00:00' AND '2555-09-30 23:59:59'
SELECT * FROM person_dmht_screen_summary WHERE CONCAT(SUBSTRING(last_screen_datetime,7 ,4) ,'-' ,SUBSTRING(last_screen_datetime,4 ,2) ,'-' ,SUBSTRING(last_screen_datetime,1 ,2),' ' ,SUBSTRING(last_screen_datetime,12 ,2),': ' ,SUBSTRING(last_screen_datetime,15 ,2),': ' ,SUBSTRING(last_screen_datetime,18 ,2)) BETWEEN '2555-09-01 00:00:00' AND '2555-09-30 23:59:59'
ลองลบระหว่าง '2555-09-01 00:00:00' AND '2555-09-30 23:59:59'
DELETE FROM person_dmht_screen_summary WHERE CONCAT(SUBSTRING(last_screen_datetime,7 ,4) ,'-' ,SUBSTRING(last_screen_datetime,4 ,2) ,'-' ,SUBSTRING(last_screen_datetime,1 ,2),' ' ,SUBSTRING(last_screen_datetime,12 ,2),': ' ,SUBSTRING(last_screen_datetime,15 ,2),': ' ,SUBSTRING(last_screen_datetime,18 ,2)) BETWEEN '2555-09-01 00:00:00' AND '2555-09-30 23:59:59'
รูปแบบวันที่ที่นำมาตรวจสอบ จะอยู่ในรุปแบบ 2555-09-01 00:00:00 ครับ
|
|
|
|
|
Date :
2012-11-27 16:41:12 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ใช่แล้วคับ....มันลบข้อมูลออกหมดเลยคับ
|
|
|
|
|
Date :
2012-11-27 16:42:28 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ไม่ได้หรือครับ
|
|
|
|
|
Date :
2012-11-27 16:44:33 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ของท่าน pepo ลบข้อมูลหมดเลยคับ
ส่วนของท่าน ไวยวิทย์ ไม่ออกอคับ
|
|
|
|
|
Date :
2012-11-27 16:49:26 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
มันขึ้น error อะไรบ้างไหมครับ
ข้อมูลทดสอบหน่ะครับ
Code (SQL)
-- ----------------------------
-- Table structure for tbl_email
-- ----------------------------
DROP TABLE IF EXISTS `tbl_email`;
CREATE TABLE `tbl_email` (
`id` int(11) NOT NULL auto_increment,
`email` text collate utf8_unicode_ci,
`date_time` text collate utf8_unicode_ci,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
-- ----------------------------
-- Records
-- ----------------------------
INSERT INTO `tbl_email` VALUES ('4', '[email protected]', '09/11/2555 16:09:01');
INSERT INTO `tbl_email` VALUES ('2', '[email protected]', '02/11/2555 16:09:08');
INSERT INTO `tbl_email` VALUES ('3', '[email protected]', '03/11/2555 16:09:08');
INSERT INTO `tbl_email` VALUES ('5', '[email protected]', '10/11/2555 17:10:10');
แล้วลองรัน phpmyadmin ตามนี้
Code (PHP)
//+ เลือกข้อมูล
SELECT * FROM tbl_email WHERE CONCAT(SUBSTRING(date_time,7 ,4) ,'-' ,SUBSTRING(date_time,4 ,2) ,'-' ,SUBSTRING(date_time,1 ,2),' ' ,SUBSTRING(date_time,12 ,2),': ' ,SUBSTRING(date_time,15 ,2),':' ,SUBSTRING(date_time,18 ,2)) BETWEEN '2555-11-10 00:00:00' AND '2555-11-30 23:59:59'
//+ ลบข้อมูล
DELETE FROM tbl_email WHERE CONCAT(SUBSTRING(date_time,7 ,4) ,'-' ,SUBSTRING(date_time,4 ,2) ,'-' ,SUBSTRING(date_time,1 ,2),' ' ,SUBSTRING(date_time,12 ,2),':' ,SUBSTRING(date_time,15 ,2),':' ,SUBSTRING(date_time,18 ,2)) BETWEEN '2555-11-10 00:00:00' AND '2555-11-30 23:59:59'
ลองดูครับ
|
|
|
|
|
Date :
2012-11-27 16:53:17 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ใน sql มันไม่ eror คับ แต่พอไปใช้จริง มันไม่ลบคับ ฐานข้อมูลคนล่ะตัวนะคับ
|
|
|
|
|
Date :
2012-11-27 17:16:21 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
แล้วเขียนยังไง ครับ
|
|
|
|
|
Date :
2012-11-27 17:21:23 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ตามที่ให้มาคับ....เดี๋ยวยังไงผมลอง งม ต่อก่อนคับ
|
|
|
|
|
Date :
2012-11-27 17:31:02 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ครับ งมต่อ
|
|
|
|
|
Date :
2012-11-27 17:37:16 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
พอจะมีอีกซักแนวทางไหมคับ
|
|
|
|
|
Date :
2012-11-27 17:39:03 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ที่ผมทดลองตามโค้ด และ ฐานข้อมูล ที่ผมให้ใน #18 ผมว่ามันก็ได้ครับ
ถ้าหากแนวทางอื่น ก็รอผู้รู้ท่านอื่น ๆ มาช่วยล่ะครับ
|
|
|
|
|
Date :
2012-11-28 00:07:56 |
By :
ไวยวิทย์ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
ได้แล้วนะคับ โค้ดตามนี้คับ Code (PHP)
select * from person_dmht_screen_summary where last_screen_datetime between '2012-09-01 00:00:00' and '2012-09-30 23:59:59'
คือ ข้อมูลวันที่ที่ผมเอาไป select มันเป็น พ.ศ. คับ มันต้องเป็น ค.ศ คับถึงได้คับ งง อยู่ตั้งนาน
|
|
|
|
|
Date :
2012-11-28 11:10:17 |
By :
koncept |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Load balance : Server 02
|