Mysql если еще с несколькими условиями - PullRequest
1 голос
/ 15 февраля 2020

Может ли кто-нибудь из вас помочь мне создать запрос на выборку для следующей таблицы, например «Данные». У меня есть аналогичная таблица, из того, что мне нужно выбрать запрос со следующими условиями Получить все записи, где 1. удалить "0" 2. И если delete равен '1', то год должен быть> 2019 3. И если delete равен '1', а Year = 2019, то месяц должен быть> 2

------------------------------------
id , name , delete , year , month
------------------------------------
1 , apple ,     0 , 0000 , 0 
2 , orange ,    1 , 2019 , 3 
3 , grapes ,    1 , 2018 , 4 
4 , Banana ,    1 , 2019 , 1 
5 , Pears ,     0 , 0000 , 0 
6 , Pineapple , 1 , 2020 , 3 
7 , watermelon ,1 , 2019 , 2 

Результаты должны быть

1 , apple ,     0 , 0000 , 0 
2 , orange ,    1 , 2019 , 3 
5 , Pears ,     0 , 0000 , 0 
6 , Pineapple , 1 , 2020 , 3 

1 Ответ

0 голосов
/ 15 февраля 2020

Использование

SELECT 
  * 
FROM 
  Table1
  Where
     `delete` = 0
     OR (`delete` = 1 AND `year` > 2019)
     OR (`delete` = 1 AND `year` = 2019 AND `month` > 2)

Результат http://sqlfiddle.com/#! 9 / c7ae8f / 1

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