PDA

Ver la Versión Completa : Consultas en oracle


Onti
19-09-2003, 19:57:25
En SQL server cuando queria hacer una consulta que haga referencia al primer dia de mes actual utilizaba el codigo:

SELECT
*
FROM
TABLA
WHERE
FECHA < CONVERT(DATETIME,CONVERT(VARCHAR(4),YEAR(GETDATE()))+'-'+CONVERT(VARCHAR(2),MONTH(GETDATE()))+'-1')

Como puedo hacer una consulta equivalente con Oracle.


2.- Como puedo hacer un query que me devuelva la estructura de una tabla.


Muchas gracias y
Salu2 a To2

delphi.com.ar
19-09-2003, 20:45:28
1)

Aqui te trae el valor del primer día en el formato que tu indicas
SELECT TO_CHAR(SYSDATE, '"01/"MM/YYYY') FROM DUAL
Aqui hace una consulta como la tuya
SELECT *
FROM TABLA
WHERE FECHA < TO_DATE(TO_CHAR(SYSDATE, '"01/"MM/YYYY'), 'DD/MM/YYYY)

¿Tu código no fallaría si el formato de fecha es diferente al que tu pasas?... En Oracle usando TO_DATE nunca sucederá!.. Si alguien conoce una función con la funcionalidad del TO_DATE para SqlServer 7 será bienvenido!


2)
En SqlPlus si no me equivoco: DESC TABLA.. fuera de sqlplus puedes acceder a las vistas/tablas del diccionario de datos como SYS.USER_TAB_COLUMNS y/o SYS.ALL_TAB_COLUMNS....

Saludos!

Onti
20-09-2003, 03:46:43
Ok, lo probe y funciona bien.

gracias

afarenas
25-09-2003, 16:07:30
Hola mi querido Onti
para averiguar la estructura de una tabla lo puedes hacer
de la siguiente forma
->Desc Tabla
y si necesitas la información adicional a la tabla como Tablespace etc entonces
puedes utilizar
->select * from tabs where Table_name=tabla;
->select * from user_tables where Table_name=tabla';