根据dob计算年龄,并在mysql中返回年龄在20到30之间的行

emeijp43  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(313)

我试图根据存储在用户表中的dob来计算年龄,并根据年龄得到结果行。
e、 我想要年龄在20到30岁之间的用户。
我试过使用子查询,但没有成功。
请建议。

SELECT
id
FROM
personal_info
WHERE
(
SELECT
    ROUND(
        (
            DATEDIFF(
                CURRENT_DATE,
                STR_TO_DATE(dob, '%Y-%m-%d')
            ) / 365
        )
    ) AS age
FROM
    personal_info
) BETWEEN 20 AND 30
qgelzfjb

qgelzfjb1#

尝试以下查询:

SELECT
id
FROM
personal_info
WHERe 
    ROUND
        (
            DATEDIFF(
                CURRENT_DATE,
                STR_TO_DATE(dob, '%Y-m%-%d')
            ) / 365
        ) BETWEEN 20 AND 30

相关问题