Fórum funções datapart, dataadd, datadiff ... #394009
20/01/2011
0
bom como todos sabem existem as função para manipulação de datas em sql getdate, datapart, dataadd e datadiff entre outras, o problema é que se eu fizer por exemplo no firebird :
select getdate();
em vez de retornar a data atual, ele diz : unexpected end of command
select getdate();
em vez de retornar a data atual, ele diz : unexpected end of command
Ronaldo Lanhellas
Curtir tópico
+ 0
Responder
Posts
20/01/2011
Emerson Nascimento
quase todas as funcionalidades do SQL Server estão presentes no Firebird, porém com outros nomes de função ou até mesmo sintaxe diferente.
select current_date from rdb$database -- retorna a data atual
select current_time from rdb$database -- retorna a hora atual
select current_timestamp from rdb$database -- retorna a data/hora atual
talvez em versões mais novas do Firebird seja possível suprimir a tabela rdb$database
para extrair partes de uma data utilize a função extract().
-- obtém o dia da data/hora atual
select extract(day from current_timestamp) from rdb$database
-- obtém o mês da data/hora atual
select extract(month from current_timestamp) from rdb$database
-- obtém o ano da data/hora atual
select extract(year from current_timestamp) from rdb$database
-- obtém o dia da semana
select extract(weekday from current_timestamp) from rdb$database
-- onde 0 é domingo, 1 é segunda, e sucessivamente até 6, que é sábado
-- obtém o enésino dia do ano (no momento completamos o 19o. dia do ano)
select extract(yearday from current_date) from rdb$database
para incrementar ou decrementar uma data basta adicionar ou subtrair o numero de dias.
select current_date+60 from rdb$database -- retorna a data atual acrescida de 30 dias.
-- para obter uma substring
select substring(valor_texto from 3) from tabela -- extrai a partir do 3o. caractere
select substring(valor_texto from 5 for 2) from tabela -- extrai 2 caracteres a partir do 5o. caractere
a função IsNull() não está presente no Firebird, porém a função COALESCE() pode ser usada para o mesmo fim (a função coalesce() está presente do SQL Server também)
bom, com o tempo você irá aprender mais....
select current_date from rdb$database -- retorna a data atual
select current_time from rdb$database -- retorna a hora atual
select current_timestamp from rdb$database -- retorna a data/hora atual
talvez em versões mais novas do Firebird seja possível suprimir a tabela rdb$database
para extrair partes de uma data utilize a função extract().
-- obtém o dia da data/hora atual
select extract(day from current_timestamp) from rdb$database
-- obtém o mês da data/hora atual
select extract(month from current_timestamp) from rdb$database
-- obtém o ano da data/hora atual
select extract(year from current_timestamp) from rdb$database
-- obtém o dia da semana
select extract(weekday from current_timestamp) from rdb$database
-- onde 0 é domingo, 1 é segunda, e sucessivamente até 6, que é sábado
-- obtém o enésino dia do ano (no momento completamos o 19o. dia do ano)
select extract(yearday from current_date) from rdb$database
para incrementar ou decrementar uma data basta adicionar ou subtrair o numero de dias.
select current_date+60 from rdb$database -- retorna a data atual acrescida de 30 dias.
-- para obter uma substring
select substring(valor_texto from 3) from tabela -- extrai a partir do 3o. caractere
select substring(valor_texto from 5 for 2) from tabela -- extrai 2 caracteres a partir do 5o. caractere
a função IsNull() não está presente no Firebird, porém a função COALESCE() pode ser usada para o mesmo fim (a função coalesce() está presente do SQL Server também)
bom, com o tempo você irá aprender mais....
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)