投稿に記載されている3つの異なる日付の注文表があるとします。あなたの注文テーブルは、単純なままにするために4つの列(id、startDate、endDate、compDate)を持っているとします。
あなたが必要になりました
/*Data for the table `orders` */
insert into `orders`(`id`,`startDate`,`endDate`,`compDate`) values
(1,'2017-04-10 00:00:00','2017-04-20 00:00:00','2017-04-23 00:00:00'),
(2,'2017-04-10 00:00:00','2017-04-20 00:00:00','2017-04-19 00:00:00'),
(3,'2017-04-10 00:00:00','2017-04-20 00:00:00','2017-04-22 00:00:00');
:
CREATE TABLE `orders` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`startDate` datetime DEFAULT NULL,
`endDate` datetime DEFAULT NULL,
`compDate` datetime DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=latin1;
は、彼らがendDateにを超えている後半に受注しているそのうちの2つご注文テーブル内の3つのレコードが存在すると仮定しますと、今、あなたのMySQLデータベースのSQLが与えられています後半に配信されたものをオーダーをチェックするためにフィルタ(compDate> endDateに)で次のような単純なSQL文を実行するために:
SELECT * FROM orders WHERE compDate > endDate;
、それはあなたに2を与える下旬IDが1のレコードを提供し、 3.(すなわち、後半に受注。)
Click here to see the Sqlyog query snapshot that displays late orders
ホープこれはあなたの問題を解決します。
ヒント: 'WHERE'は列を比較します。 –
終了日が開始日より前 – Strawberry