Formatar números, data e hora no próprio MySql

Iniciado por Triplo X, 04 de Outubro , 2008, 12:16:21 PM

tópico anterior - próximo tópico

0 Membros e 1 Visitante estão vendo este tópico.

Triplo X

Uma ótima dica é usar máscaras e formatações para campos em um formulário em sua aplicação para inserção , atualização ou seleção de dados.

Mas você terá casos em que isso não ajudará a conseguir o resultado esperado.
Daí é preciso esquecer um pouco a aplicação e pensar um pouco em fazer isso no próprio banco de dados utilizando funções e formatações.

Mas como?

*É de extrema importância ler a documentação do MySql (está em Português também).

* Veja alguns exemplos:


Formatando números:

Números do tipo Float(7,2)

CitarSELECT REPLACE(preco1, '.', ',') 'preço formatado' FROM calculos;

visualização:

==============
preço formatado   
-----------------
0,00                   
==============



Formatando data do tipo DATE

CitarSELECT DATE_FORMAT(data_acesso, '%d-%m-%y') 'data formatada' FROM calculos;

Visualização:

==============
data formatada   
-----------------
00-00-00             
==============


Outras maneira

SELECT  DATE_FORMAT(data_acesso, '%d %M %Y') 'data formatada' FROM calculos;[/quote]

visualização:

==============
data formatada
-----------------
01 January 2008
==============



CitarSELECT DATE_FORMAT(data_acesso, '%W, %d %M %Y') 'data formatada' FROM calculos;

visualização:

=====================
data formatada
--------------------------
Saturday, 01 January 2008
=====================




Formatando data do tipo DATETIME

Minha formatação favorita.
Na minha opinião: a mais completa.

CitarSELECT  DATE_FORMAT(datahora, '%W, %d %M %Y - %H:%i:%s') 'data e hora' FROM calculos;

visualização:

=============================
data e hora
-------------------------------------
Saturday, 01 January 2008 - 12:00:55
=============================



Em quais aplicações trabalhar com formatação no próprio banco?

- Aplicações de planilhas e relatórios gerados automaticamente
- Utilização de relatórios com o IReport, JpasperReport, etc.
- Tabelas que agrupam colunas reais do banco de dados.

- Até mesmo em suas aplicações, principalmente se você não entender ou não conseguir utilizar formatação para campos.

Bom, foram apenas alguns exemplos.
O MySql é muito mais que isso.


Eu estava procurando ajuda para outras coisas e acabei encontrando um tópico com um quadro que pode explicar isso melhor.
É bem mais original postar o link do que copiar e colar aqui.  <img src="{SMILIES_PATH}/grin.gif" alt=";D" title="Grin" />

http://imasters.uol.com.br/artigo/2340/mysql/funcoes_de_datahora/

É pouca coisa, mas é de extrema importância.
Espero que gostem.
Até a próxima...
Não me venha dizer que é melhor que alguém que eu te espanco!
Todos não passamos de ratinhos que morrerão um dia como todos os outros...