 |
|
Code
CREATE TABLE `bookrent` (
`id` int(11) NOT NULL auto_increment,
`bill` varchar(10) NOT NULL,
`d_in` date NOT NULL,
`d_out` date NOT NULL,
`d_pay` date NOT NULL,
`pay` varchar(10) NOT NULL,
`bookrent` varchar(1) NOT NULL default 'N',
`stay` varchar(1) NOT NULL default 'N',
`payment` varchar(10) NOT NULL,
`d_payment` date NOT NULL,
`remark` varchar(200) NOT NULL,
`datere` datetime NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=5 ;
--
-- Dumping data for table `bookrent`
--
INSERT INTO `bookrent` VALUES (1, '54/00001', '2011-09-15', '2011-09-17', '2011-08-29', '1500', 'Y', 'N', '', '0000-00-00', '', '0000-00-00 00:00:00');
INSERT INTO `bookrent` VALUES (2, '54/00002', '2011-09-20', '2011-09-22', '2011-07-30', '2000', 'Y', 'N', '', '0000-00-00', '', '0000-00-00 00:00:00');
INSERT INTO `bookrent` VALUES (3, '54/00003', '2011-09-08', '2011-09-09', '0000-00-00', '', 'N', 'N', '', '0000-00-00', '', '0000-00-00 00:00:00');
INSERT INTO `bookrent` VALUES (4, '54/00004', '2011-09-13', '2011-09-15', '0000-00-00', '', 'N', 'N', '', '0000-00-00', '', '0000-00-00 00:00:00');
คิดไม่ออกแล้วครับว่าจะ SELECT ยังไงให้รู้ว่า ไม่อยู่ในช่วงวันที่เลือก จะทำระบบจองห้องพักรายวันออนไลน์ครับ
ฟิวล์ d_in วันที่เข้า d_out วันที่ออก
SELECT * FROM `bookrent` where `d_in` BETWEEN '2011-09-15' and '2011-09-17' ก็จะรู้ว่าห้องไม่ว่าง id 1 แต่ถ้า
SELECT * FROM `bookrent` where `d_in` BETWEEN '2011-09-16' and '2011-09-17' id 1 ไม่เข้าเงือนไข
SELECT * FROM `bookrent` where `d_in` BETWEEN '2011-09-12' and '2011-09-14' or `d_out` BETWEEN '2011-09-12' and '2011-09-14' แบบนี้มัถูกหรือป่าวครับ
เลยไม่รู้ว่าจะ SELECT ยังไง
ตัวอย่าง
นาย ก จะจองห้องวันที่ 2011-09-12 ถึง 2011-09-14 แล้วจะเอาไปเช็คกับ d_in และ d_out ยังไงให้รู้ว่าห้องไม่ว่าง
หรือผมต้องใช้วิธิเก็บแบบอื่น
ช่วยชี้แนะด้วยครับ
ขอบคุณครับ
Tag : PHP, MySQL
|
ประวัติการแก้ไข 2011-08-29 11:18:48
|
 |
 |
 |
 |
Date :
2011-08-29 10:53:16 |
By :
tawanc2005 |
View :
1176 |
Reply :
2 |
|
 |
 |
 |
 |
|
|
|
 |