Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

tiagocaus

Selecionar ANO DD/MM/YYYY

Recommended Posts

Bom dia,

Tenho uma campo data_venci, onde o formato é DD/MM/YYYY.

 

Estou tentando selecionar somente o ano. Alguem sabe como fazer?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia Tiago Caus,

você esta tentando pegar esse ano por onde?

Tenho um código aqui, mais é em JAVA, da uma olhada:

 

Date data = new Date(System.currentTimeMillis());

SimpleDateFormat formatarDate = new SimpleDateFormat("yyyy");

String dt = formatarDate.format(data);

 

 

Nesse caso, ele vai gerar uma string com o ano que foi pego do sistema, só que eu não consigo passar esse dados para o banco, espero que tenho ajudado.

 

Att. Gustavo Fontolan

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou tentando fazer primeiro no MySQL para depois usar no PHP.

 

Tem mais alguma dica?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Tiago Caus,

no MYSQL, é possível você transformar um campo em ano, se não me engano é YEAR, de uma olhada,

se já criou a tabela utilize o seguinte código para modificar o campo:

 

ALTER TABLE nome da tabela

MODIFY nome do campo YEAR;

 

Com esse código, você altera o tipo dos dados a ser inserido, mais não conheço uma maneira para inserir dados, nem do tipo DATE ou YEAR, pelo JAVA para mostrar um código.

Espero ter conseguido ajudar.

 

Att. Gustavo Fontolan

Compartilhar este post


Link para o post
Compartilhar em outros sites

Eu não posso modificar a tabela, pois existe outros scripts que usam a data em formato brasileiro.

Pesquisando achei como fazer isso via MySQL, mas só altera o formato da data:

 

de: DD/MM/YYYY para YYYY/MM/DD

 

SELECT 

STR_TO_DATE(`data_venci`, '%d/%m/%Y') AS NovaData,

FROM `receita_despesa` 

 

 

 

E novamente pesquisando, achei esse outro código que pega somente o ano

 

EXTRACT(YEAR FROM NovaData) AS OrderYear

 

 

Mas não estou sabendo fazer eles trabalharem em conjunto para fazer o que quero.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que há uma pequena confusão, DATE é um formato numérico que guarda uma data, para exibir usa-se functions que convertem este tipo da forma que se deseja ou extrair parte (ano por exemplo) de uma data.

 

Veja o "manuel" para detalhes.

 

http://dev.mysql.com/doc/refman/5.5/en/datetime.html

 

http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tiago,

 

Não sei se entendi bem o que você quer, mas se a sua necessidade é setar o campo data_venci e extratir do mesmo apenas o ano, basta voce usar um YEAR( ).

 

$anos = mysql_query("SELECT YEAR(data_venci) FROM nome_da_sua_tabela")

or die (mysql_error());

 

Abraços, e espero ter ajudado!

 

Flamaury

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tiago,

 

Se possível post aqui o seu codigo, tanto a parte da data (tipo de campo), bem como a codigo de envio da data para o BD e tambem o codigo de seleção do campo, pois assim da para analisar, corrigir e testá-lo, de forma a lhe ajuar.

 

Abraços,

 

Flamaury

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.