соответствующие даты-дни рождения - PullRequest
0 голосов
/ 29 апреля 2011

Я делаю запрос MySQL и пытаюсь получить дни рождения, которые соответствуют текущему дню и месяцу.

Вот что я пытался, но понял, что он не будет работать должным образом:

$ дни рождения= $ wpdb-> get_results ("SELECT * FROM {$ wpdb-> usermeta} WHERE meta_key =" день рождения "И meta_value> = UNIX_TIMESTAMP (DATE (NOW ()))");

Это потянет день рождения, конечно, если день рождения в этом году (не то, что мне нужно).день рождения хранится в БД как 1304035200

Любая помощь будет принята с благодарностью.Я прочитал много похожих постов, но они не помогают с тем, что мне нужно.

Ответы [ 2 ]

0 голосов
/ 29 апреля 2011

Самым простым способом может быть преобразование метки времени Unix в дату и сравнение ее значений месяца и дня с сегодняшними значениями месяца и дня. Я на своем iPhone, так что простите форматирование / опечатки, но я думаю, что следующее должно работать (в ожидании жены, пока она делает покупки:))

SELECT * FROM {$ wpdb-> usermeta} WHERE meta_key = 'день рождения' И ((MONTH (FROM_UNIXTIME (meta_value)) = МЕСЯЦ (DATE (NOW ()))) И (ДЕНЬ (FROM_UNIXTIME ( meta_value)) = ДЕНЬ (ДАТА (СЕЙЧАС ()))))

0 голосов
/ 29 апреля 2011
select * from table where from_unixtime(field,'%m-%d') = right(curdate(),5)

$birthdays = $wpdb->get_results(" SELECT * FROM {$wpdb->usermeta} WHERE meta_key = 'birthday' and from_unixtime(meta_value,'%m-%d') = right(curdate(),5) "); 
...