私は以下のようなテーブルを持っています
CREATE TABLE Customers_History(Row_Id INT NOT NULL PRIMARY KEY AUTO_INCREMENT、 Cust_Name VARCHAR(255)、 Created_Date DATE、 Cust_Status TINYINT)
表の行は以下のとおりです
INSERT INTO Customers_History(Cust_Name、Created_Date、Cust_Status) VALUES('顧客A'、 '20120516'、0)、 ('顧客B'、 '20120516'、0)、 ('顧客C'、 '20120516'、0)、 (「顧客A」、「20120517」、1)、 ('顧客B'、 '20120517'、0)、 ('顧客C'、 '20120517'、0)、 (「顧客A」、「20120520」、1)、 ('顧客B'、 '20120520'、0)、 ('顧客C'、 '20120520'、1)、 ('顧客A'、 '20120521'、0)、 ('顧客B'、 '20120521'、0)、 ('顧客C'、 '20120521'、1)、 (「顧客A」、「20120526」、1)、 (「顧客B」、「20120526」、1)、 ('顧客C'、 '20120526'、0);
日付をパラメータとして出力を以下のようにするクエリが必要です
whereクラスの日付のパラメーターとして20120517を渡すと、ステータスが0から1に変わるときに顧客Aを取得する必要があります。
顧客A
whereクラスの日付のパラメーターとして20120520を渡すと、ステータスが0から1に変わるときに顧客Cを取得する必要があります。
顧客C
whereクラスの日付のパラメーターとして20120526を渡すと、ステータスが0から1に変わるときに顧客Bを取得する必要があります。
顧客B
ステータスが初めて0から1に変更された特定の日付の顧客名が必要です。
注:20120526を日付のパラメーターとしてwhereクラスに渡すと、顧客Aのステータスが17自体で0から1に変更されたため、顧客Aを取得しないようにする必要があります。