una función que retorna un resultado de acuerdo a los valores de un campo para usar dentro de un select
En ORACLE:
select DECODE(u.id
,2, 'GOOD'
,3, 'POOR'
,4, 'EXCELLENT'
, 'BAD')
from university
En SQL Server:
select CASE u.id
WHEN 2 THEN 'GOOD'
WHEN 3 THEN 'POOR'
WHEN 4 THEN 'EXCELLENT'
ELSE 'BAD'
END CASE
from university u;
martes, 24 de noviembre de 2015
decode versus case
Publicadas por
Tito
a las
15:39
0
comentarios
Etiquetas: Oracle, Soluciones, SQL Server
viernes, 8 de noviembre de 2013
Cambios en columnas
SQL Server / MS Access:
ALTER COLUMN column_name datatype
MODIFY COLUMN column_name datatype
Publicadas por
Tito
a las
12:10
0
comentarios
Etiquetas: Oracle, Soluciones, SQL Server
Alter Table
ALTER COLUMN column_name datatype
MODIFY COLUMN column_name datatype
Publicadas por
Tito
a las
10:06
0
comentarios
Etiquetas: Oracle, SQL Server
jueves, 30 de junio de 2011
Caracteres especiales
Solo use lo sgte.:
SELECT columns FROM table WHERE column LIKE '%[%]%'
-- or
SELECT columns FROM table WHERE
column LIKE '%\%%' ESCAPE '\'
Fuente: http://sqlserver2000.databases.aspfaq.com/how-do-i-search-for-special-characters-e-g-in-sql-server.html
Publicadas por
Tito
a las
19:25
0
comentarios
Etiquetas: Oracle, Soluciones, SQL Server
jueves, 5 de mayo de 2011
Respaldo de tablas
Publicadas por
Tito
a las
16:13
0
comentarios
Etiquetas: Oracle, Soluciones, SQL Server
lunes, 24 de enero de 2011
Tipos de Shutdown
Nunca está demás en la cartera de la dama, en el bolsillo del varón saber como bajar una base de datos como cuando las cosas andan mal y la última alternativa que queda es dar con el viejo truco de un OFF/ON.
Publicadas por
Tito
a las
16:47
0
comentarios
Etiquetas: Oracle, Soluciones
martes, 23 de marzo de 2010
Oracle/PLSQL: Coalesce Function
Siempre se aprende algo nuevo, ahora me encontré con la función COALESCE en Oracle y debo reconocer que no la recordaba.
En Oracle se usa en Oracle 9i, Oracle 10g, Oracle 11g
La función coalesce retorna la primera expresión no nula en una lista. Si todos los valores son nulos, entonces la función retorna null
La sintaxis de la función es:
Por ejemplo, se podría usar de la sgte. forma:coalesce( expr1, expr2, ... expr_n )
El equivalente en la sentencia IF-THEN-ELSE es:SELECT coalesce( address1, address2, address3 ) result
FROM suppliers;
IF address1 is not null THEN
result := address1;ELSIF address2 is not null THEN
result := address2;ELSIF address3 is not null THEN
result := address3;ELSE
result := null;END IF;
Fuente: http://www.techonthenet.com/oracle/functions/coalesce.php
Publicadas por
Tito
a las
17:09
0
comentarios
Etiquetas: Oracle, Soluciones
viernes, 5 de febrero de 2010
SQL Server: Limitando el numero de registros
En una consulta Oracle, cuando se quiere reducir el número de registros en una consulta se usa la sentencia:
esto reduce el resultado a un número máximo de 10 registros.
En MySQL la solución similar sería con un
en Sql Server encontré 2 soluciones:
1) Al principio del select
2) en un seteo previo a la consulta
para volver el seteo a la normalidad
Publicadas por
Tito
a las
10:23
0
comentarios
Etiquetas: Oracle, Soluciones, SQL Server
viernes, 27 de noviembre de 2009
El DECODE en SQL Server
En Oracle existe la funcion DECODE que permite evaluar un valor para seleccionar otro.
select decode(v_mes, 1, 'Enero', 2, 'Febrero', 'Otro')
into v_valor
from dual
En SQL Server, el simil se hace con un CASE, asi:
select @v_valor = case @v_mes
when 1 then 'Enero'
when 2 then 'Febrero'
else 'Otro'
end;
Publicadas por
Tito
a las
15:34
0
comentarios
Etiquetas: Oracle, Soluciones, SQL Server
jueves, 19 de febrero de 2009
El tip oracle del dia
El tip Oracle de hoy es como acceder vía sqlplus a un usuario de BD dentro de una máquina Unix con dos o más instancias Oracle
y voilá, queda seteada la instancia a la que se desee conectar, ahora sólo conectar con user y password
(by Francisca Miranda, Miguel Cifuentes)
Publicadas por
Tito
a las
16:27
0
comentarios
Etiquetas: Oracle
jueves, 3 de abril de 2008
Manual Oracle
Siempre en la pega salen cositas para salvar algún entuerto, su script para modificar parámetros, su paltita, aqui algunas cosas que descubrimos con mi amigo Carlos Arriagada:
para cuando tengas que cambiar un tablespace:
select
'alter database datafile '||
file_name||
' '||
' autoextend on;'
from
dba_data_files;
para cambiar tablas desde un tablespace a otro:
SELECT 'ALTER TABLE DESA01.' || table_name || ' MOVE TABLESPACE DESA01;' comandos_script
FROM all_tables a
WHERE a.owner = 'DESA01'
AND a.tablespace_name <> 'DESA01'
para los índices:
SELECT 'ALTER INDEX ' || a.owner || '.' || index_name ||
' REBUILD TABLESPACE DESA01;' comandos_script
FROM all_indexes a
WHERE a.owner = 'DESA01'
AND a.tablespace_name <> 'DESA01'
Cuando necesites funciones para manejar strings:
http://www.psoug.org/reference/string_func.html
Para conocer el usuario de Sistema Operativo que está ejecutando las consultas:
SELECT SYS_CONTEXT ('USERENV', 'OS_USER')
FROM DUAL;
Que permisos tienen los roles:
rol connect = alter session, create session, create cluster, create table, create view, create synonym, create sequence, create database link
rol resource = create cluster, create table, create procedure, create sequence, create trigger
Cuando tengas que aumentar la cantidad de usuarios concurrentes permitidos (creo que es para eso, pruebenlo igual :):
ALTER SYSTEM SET PROCESSES=150 SCOPE=SPFILE;
Bueno, eso, parecía más, pero me han salvado de repente. y gracias Carlos, queda cumplida mi palabra ... chau
Publicadas por
Tito
a las
17:50
0
comentarios
Etiquetas: Oracle