Oracle vc Sql Server
• Concatenação de strings
A consulta abaixo retorna a rua da coligada com uma vírgula e mais o número
SQL SERVER:
Select rua + ‘, ‘ + numero from gcoligada
ORACLE:
Select rua || ‘, ‘ || numero from gcoligada
• Conversão de valores nulos
A consulta abaixo retorna os preços unitários da tabela timmov, substituindo os valores nulos por zero
SQL SERVER:
Select isnull(precounitario,0) from titmmov
ORACLE:
Select nvl(precounitario,0) from titmmov
• Data atual
A consulta abaixo retorna a data atual do sistema
SQL SERVER:
Select getdate()
ORACLE:
Select sysdate from dual
• Extrair o mês de uma data
A consulta abaixo retorna o mês da data de vencimento de um lançamento financeiro
SQL SERVER:
Select month(datavencimento) from flan
ORACLE:
Select extract(month from datavencimento) from flan
• Adicionar n meses a uma data
A consulta abaixo adiciona 11 meses à data de admissão de um funcionário
SQL SERVER:
Select dateadd(month, 11, dataadmissao) from pfunc
ORACLE:
Select add_months(dataadmissao,11) from pfunc
- Para adicionar dias, basta adicionar n à data
- Para adicionar anos, basta multiplicar n° de anos por 12 e colocar no 2° parâmetro dessa mesma função
• Diferença em meses entre uma data
A consulta abaixo retorna quantos meses há de diferença entre a data de emissão de um vencimento e a data atual
SQL SERVER:
Select datediff(month, dataemissao, getdate()) from tmov
ORACLE:
Select months_between(dataemissao, sysdate) from tmov
- Para diferença em dias, basta subtrair uma data pela outra
- Para diferença em anos, basta dividir o valor retornado por 12
• Retornar as n primeiras linhas de uma consulta
A consulta abaixo retorna os três primeiros códigos da tabela de produtos
SQL SERVER:
Select top 3 codigoprd from tprd
ORACLE:
Select codigoprd from tprd where rownum t-sql
CHARINDEX ()
Select CHARINDEX(‘D’,Nome) from Pfunc where chapa = ’1′ and Codcoligada = 1
Considerando que o Nome é