Q:

Buscar no MySQL usando somente dia, mês ou ano com PHP

Criei uma tabela, nela um campo no formato DATETIME para armazenar o dia, mês, ano e horário em que um registro é feito.
Gostaria de saber como eu posso fazer para buscar somente usando dia, mês ou ano ?
Exemplo:
Tenho 4 registros:
 2017-02-03
 2017-02-13
 2017-05-03
 2018-01-04

Ao fazer uma busca para exibir os registros feitos no dia 03, deve aparecer assim:
 2017-02-03
 2017-05-03

Ao fazer uma busca para exibir os registros feitos no ano 2017, deve aparecer assim:
 2017-02-03
 2017-02-13
 2017-05-03

A mesma coisa deve ser feita para o mês.É possível fazer isso com PHP?

A:

Utilize: YEAR(), MONTH() e DAY(): 
SELECT * FROM tabela
WHERE YEAR(data) = '2017'
AND MONTH(data) = '07'
AND DAY(data) IN ('1', '25' , '30')

Direto no PHP com explode:
$data = '2017-01-15';

$arrayData = explode("-", $data);

echo "Ano:     ".$arrayData[0];
echo "<br>Mes: ".$arrayData[1];
echo "<br>Dia: ".$arrayData[2];

