SELECT count(*) as c FROM `mycms_member_card` left join mycms_member on mycms_member_card.member_id = mycms_member.id left join mycms_member_card_type on mycms_member_card.type_id = mycms_member_card_type.id WHERE ( DATEDIFF( CAST( CONCAT( YEAR ('2016-10-17 13:40:38'), DATE_FORMAT( FROM_UNIXTIME( mycms_member.birthday, '%y-%m-%d %H:%i:%S' ), '-%m-%d' )) AS DATE), CAST( DATE_FORMAT( '2016-10-17 13:40:38', '%y-%m-%d' ) AS DATE)) BETWEEN 0 AND 4 OR DATEDIFF( CAST( CONCAT( YEAR ('2016-10-17 13:40:38') + 1, DATE_FORMAT( FROM_UNIXTIME( mycms_member.birthday, '%y-%m-%d %H:%i:%S' ), '-%m-%d' )) AS DATE), CAST( DATE_FORMAT( '2016-10-17 13:40:38', '%y-%m-%d' ) AS DATE)) BETWEEN 0 AND 4 ) and mycms_member_card.v_status = '1' and mycms_member_card.is_white_card='2' and mycms_member_card.shop_id=1