如何計算SQL查詢中用戶的年齡。請注意,我將數據庫分成了幾個字段:生日,生日月和生日年。如何計算查詢中的年齡?
我創建了fiddle來展示我的意思。
CREATE TABLE IF NOT EXISTS `user_profile` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`user_birthday` tinyint(4) NOT NULL,
`user_birthmonth` tinyint(4) NOT NULL,
`user_birthyear` smallint(6) NOT NULL,
PRIMARY KEY (`user_id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
INSERT INTO `user_profile`
(user_birthday, user_birthmonth, user_birthyear) VALUES (31, 12, 1990)
哪些DBMS您使用的是夠了嗎?在Postgres中,你可以使用'age()'函數 –
你想要的邏輯是首先從三個字段中創建一個日期。接下來,獲取該日期和當前日期之間的天數。除以365.25。年齡是結果的整數部分。我不使用mySql,所以我不知道必要的功能。 –