Выберите где больше, чем и до - PullRequest
0 голосов
/ 31 декабря 2018

Я застрял для получения результата о select, где больше и, например, до тех пор, пока мои данные выглядят так:

id    profile_id    status     created_at                   updated_at
1         1           2        31/12/2018  03.38.02   31/12/2018  03.38.02
2         1           4        01/01/2019  03.38.02   01/01/2019  03.38.02
3         1           2        02/01/2019  03.38.02   02/01/2019  03.38.02
4         1           4        03/01/2019  03.38.02   03/01/2019  03.38.02
5         1           5        03/01/2019  03.38.02   03/01/2019  03.38.02
6         1           4        03/01/2019  03.38.02   03/01/2019  03.38.02

Я хочу получить такой результат, и строки будут иметь до последнего статуса =4 покажите все значения до тех пор, пока не встретите статус 4

 5         1           5        03/01/2019  03.38.02   03/01/2019  03.38.02
 6         1           4        03/01/2019  03.38.02   03/01/2019  03.38.02

. Пока я пытался сделать это, но не смог, запрос как этот

SELECT 
  * 
FROM
  `profiles` 
WHERE `created_at` > 
  (SELECT 
    `created_at` 
  FROM
    `profiles` 
  WHERE `status` IN ('4') 
    AND `profile_id` = '1'
  ORDER BY `from` DESC 
  LIMIT 1) 
  AND `profile_id` = '1'
  AND `status` IN (0, 1, 2, 3, 4, 5) 
ORDER BY `from` ASC 

и результат пустой

и если я изменю данные следующим образом

id    profile_id    status     created_at                   updated_at
1         1           2        31/12/2018  03.38.02   31/12/2018  03.38.02
2         1           4        01/01/2019  03.38.02   01/01/2019  03.38.02
3         1           2        02/01/2019  03.38.02   02/01/2019  03.38.02
4         1           4        03/01/2019  03.38.02   03/01/2019  03.38.02
5         1           5        03/01/2019  03.38.02   03/01/2019  03.38.02
*6         1           2        03/01/2019  03.38.02   03/01/2019  03.38.02*

И результат с моим запросом будет таким

 5         1           5        03/01/2019  03.38.02   03/01/2019  03.38.02
 6         1           2        03/01/2019  03.38.02   03/01/2019  03.38.02

Конечно, ожидаемые результаты не такие, яхотите результаты без изменения предыдущих данных, которые отображают

 5         1           5        03/01/2019  03.38.02   03/01/2019  03.38.02
 6         1           4        03/01/2019  03.38.02   03/01/2019  03.38.02

Кто-нибудь может помочь мне решить эту проблему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...