martes, 12 de agosto de 2014

Show full processlist para postgresSQL




Me enfrente a un problema con una aplicación en postgreSQL y lo primero que quise hacer es el conocido (por mi) show full processlist, para detectar que consultas sql se están corriendo en el motor. En postgreSQL esto no funciona entonces buscando un poco en internet encontré la forma de hacerlo.
La consulta que hay que correr es lo siguiente
select * from pg_stat_activity;

esto se puede hacer de 2 formas, por ejemplo en pgAdmin correrla con cualquier sql. O también podemos hacerlo con consola, entonces se debe de seguir los siguientes pasos:
-          # su postgres
-          # [postgres@srv]$ psql
-          postgres=# select * from pg_stat_activity;

Con esto se pueden ver las consultas igual que en MySql.

viernes, 6 de junio de 2014

Consulta con condicional en db2 / sql



Tengo que realizar una consulta en db2 (igual esto funciona en otros motores, hay que ver bien la sintaxis)  que muestre una información si se cumple determinada condición y otra si no se cumple, algo del estilo mostrar el valor A si C>D o B si C<=D.

La sintaxis en DB2 es la siguiente

Select
  CASE
        WHEN (C>D)
  THEN
        A
  ELSE
        B
  END
               as "texto….",
from TABLA 


jueves, 5 de junio de 2014

Consulta en DB2 filtrando por fecha en formato YYYYMMDD.



Estuve bastante rato buscando  cómo hacer para en DB2 hacer una consulta de los registros de la base que cumplieran con ser los del día, siendo que estos están guardados en formato YYYYMMDD.

Lo pude solucionar de la siguiente forma.


select * from TABLA
                where (CAMPO in (
                                               select concat(concat('20',substr(CHAR(current date),7,2)),concat(substr(CHAR(current date),1,2),substr(CHAR(current date),4,2))) from mmdb.locale FETCH FIRST 1 ROWS ONLY
                                                    )
                              );



Obviamente se pude agregar el where que se necesite y los join también que necesiten.

Si tienen alguna forma más fácil de hacerlo será bienvenida.

jueves, 30 de enero de 2014

Ls filtrando ordenado ascendente o filtrando por fecha



Alguans veces tenemos que ordenar los archivos en un linux por fecha, o filtrar por una determinada fecha, esto se hace con "ls" convinandolo con grep, dejo los ejemplos aca abajo.

 
Listar ordenado por fecha

Ascendente
ls –lat

Descendente
Ls –latr


Listar filtrando por una fecha fecha:
ls -l | grep 'Jan  8'

Listar filtrando por una fecha/hora:
ls -l | grep 'Jan  8 16:18'

en estos 2 ultimos ejemplos lo mejor es hacer un ls -l, ver que es lo que devuelve y luego ver bien que es lo que deben de poner en el grep