[英]PHP: calculating birthday from age
是的,這聽起來很奇怪。
在高級個人資料搜索表單中,您可以在其中按年齡進行過濾。
現在,您將在字段中輸入18或其他年齡。
我將生日存儲在mysql db中,在用戶的生日字段中,我有示例:1990-02-02
然后如何在查詢中按年齡過濾?
我是否應該先查詢,讓所有用戶生日,然后再進行比較? 占用每個用戶太多了。
我敢打賭,這就是您要搜索的內容:
SELECT * FROM mytable
WHERE TIMESTAMPDIFF(YEAR, mytable.birthday,'$currentTime') > '$ageFromForm';
要對數據進行排序,請執行以下操作:
SELECT *, (TIMESTAMPDIFF(YEAR, mytable.birthday, '$currentTime')) AS age
FROM mytable WHERE TIMESTAMPDIFF(YEAR,'$birthday','$currentTime') > '$ageFromForm'
ORDER BY age;
我希望這會有所幫助;)斯拉夫語
未經測試,但應作為從以下內容開始的基礎:
SELECT <columns> FROM users WHERE birthday < SUBDATE(NOW(), INTERVAL 18 YEAR)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.