я хотел бы манипулировать столбцом "как возраст" из таблицы 1 - PullRequest
0 голосов
/ 16 февраля 2019

ниже - это запрос, который я написал

SELECT *, YEAR(CURDATE()) - YEAR(age) AS age FROM table1

, и я хотел бы манипулировать столбцом "age" из запроса выше

, например:

SELECT  * FROM table1 WHERE age BETWEEN 1 AND 9

как я могу сделать это из этого запроса

SELECT *, YEAR(CURDATE()) - YEAR(age) AS age FROM table1

мои результаты будут возвращать строки, которые содержат диапазон возраста

Ответы [ 2 ]

0 голосов
/ 16 февраля 2019

MySQL предоставляет расширение к условию HAVING, которое позволяет вам делать то, что вы хотите:

SELECT *, YEAR(CURDATE()) - YEAR(date) AS age
FROM table1
HAVING age BETWEEN 1 AND 9;

Примечание: я предполагаю, что у вас есть какой-то столбец date , которыйВы хотите год.Брать год под названием age не имеет смысла.

0 голосов
/ 16 февраля 2019

Вы можете использовать query как subquery как

SELECT t2.* FROM
( SELECT t1.*, YEAR(CURDATE()) - YEAR(age) AS age FROM table1 t1 ) t2
WHERE t2.age BETWEEN 1 and 9
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...