DISTINCT y GROUP BY normalmente generan el mismo query plan, por lo que el rendimiento debería ser el mismo con ambas construccines. Si sólo necesitas quitar los duplicados utiliza DISTINCT. Si lo que necesitas es un query plan basado en subconsultas, con lo que las consultas podrían cambiar los resultados, tienes que comprobar el plan de ejecución antes de tomar una decisión sobre qué opción es más rápida.
(más…)Archivos de la categoría ‘Tecnología’
SQL SERVER – Diferencias entre DISTINCT y GROUP BY – Distinct vs Group By
Publicado: May 10, 2019 de elvenbyte en TecnologíaEtiquetas:diferencias, distinct, group by, server, sql
Convertir String a float y float a String, en Java
Publicado: marzo 16, 2016 de elvenbyte en TecnologíaEtiquetas:Desarrollo, Destacado, Java
float f = Float.parseFloat("25"); String s = Float.toString(25.0f);
Pero cuidado porque mientras 25 == 25.0 == 25.00, «25» != «25.0» != «25.00». Mientras la comparación en numérico es válida, no resulta cuando ya es String.
Colorear conexiones en Toad
Publicado: marzo 15, 2016 de elvenbyte en TecnologíaEtiquetas:Bases de datos, Destacado, Herramientas
Cuando tienes que trabajar con entornos diferentes, como pueden ser DESARROLLO, PRE-PRODUCCIÓN y PRODUCCIÓN, siempre viene bien tener una forma de distinguirlos mientras trabajas, especialmente el de PRODUCCIÓN.
Para esto Toad nos permite colorear el usuario/conexión. Y, ¿cómo se hace esto? Muy fácil. En la misma ventana de conexiones, seleccionamos el usuario y desplegamos la columna que tiene un cuadro de color (a la derecha, si la pantalla está estrecha tendremos que utilizar la barra de desplazamiento horizontal para verla). Seleccionamos el color en el combo y a partir de ese momento, cualquier pantalla relacionada con ese usuario/conexión, saldrá enmarcada de ese color.
Fecha de hoy en java
Publicado: marzo 8, 2016 de elvenbyte en TecnologíaEtiquetas:Chuletas, Desarrollo, Destacado, Java
Si entendemos que:
// create a java calendar instance Calendar calendar = Calendar.getInstance(); // get a java date (java.util.Date) from the Calendar instance. // this java date will represent the current date, or "now". java.util.Date currentDate = calendar.getTime(); // now, create a java.sql.Date from the java.util.Date java.sql.Date date = new java.sql.Date(currentDate.getTime());
Botón derecho del ratón deja de funcionar en Eclipse Luna
Publicado: May 27, 2015 de elvenbyte en TecnologíaEtiquetas:Desarrollo, Destacado, Eclipse
Esta es otra de las consecuencias del alto peso en memoria de los entornos de programación más utilizados hoy en día: Netbeans y Eclipse. en este caso, concretamente de Eclipse, en su versión Luna.
En ocasiones dejan de aparecer ciertas opciones del menú contextual, y en el peor de los casos, este ni siquiera aparece. Es tan grande el peso del entorno en memoria que no permite el refresco de la caché de disco. Tampoco se soluciona cuando intentamos el clean forzado manualmente.
La solución está en abrir Eclipse ya forzando de inicio ese clean, de la siguiente manera: ejecutando Eclipse con el argumento -clean, bien a través del icono en el escritorio, o bien ejecutándolo desde consola:
Etiquetas de tarea
Publicado: May 26, 2015 de elvenbyte en TecnologíaEtiquetas:Buenas Prácticas, Desarrollo, Destacado
Ya sé que siempre hablo de temas muy técnicos, y muy específicos en ocasiones, o hago compendios larguísimos que no sé cuándo acabaré (como mi serie sobre las cachés). Pero tengo una razón importante, o que a mi me lo parece, para elegir esos temas.
Normalmente suele ser porque me han afectado de forma especial en mi trabajo, y no he encontrado información suficiente o interesante en Internet. Especialmente en castellano. Es es mi forma de aportar conocimiento a la Red.
Pero muy por encima de todas, como razón especial, porque me gusta escribir, y cómo no hacerlo precisamente sobre un campo que domino, como es la programación. Y dejo ya los sentimentalismos para pasar al tema en sí: las etiquetas de tarea.
Trabajando con cachés V: consistencia y sincronización de los datos
Publicado: May 7, 2015 de elvenbyte en TecnologíaEtiquetas:Bases de datos, Cachés, Destacado, SOA
Hoy voy a hablar de estos dos términos, consistencia y sincronización, porque en el tema de las cachés, y con mantenimiento y programación, están especialmente relacionados. Lo explico a continuación.
Se pretende, por norma general, que los datos de la caché sean lo más parecidos posible a los que hay en la propia base de datos. Esto es lo que denominamos consistencia de la caché. Para lograr esto, necesitamos sincronizar los datos, entre la caché y la base de datos. Esto puede ser algo muy tedioso si se hace a mano, por eso hay sistemas y metodologías que nos ayudan a automatizarlo.
No hablaré de las herramientas por no darle demasiada extensión al artículo, pero sí de algún método o solución. Estos métodos se constituyen normalmente en políticas de uso, concretamente en políticas especiales, que en nuestro caso llamaremos Políticas de Actualización o Escritura. Estas políticas determinan el instante en que se actualiza la información en la memoria principal, siendo esta la base de datos en nuestro caso, cuando se hace una escritura en la memoria caché.
Netbeans con Glassfish no permite el clean
Publicado: May 5, 2015 de elvenbyte en TecnologíaEtiquetas:Desarrollo, Destacado, Glassfish, Netbeans, Servidores
Ya sé que Netbeans, al igual que Eclipse, es un come RAM de los peores, y que Glassfish como servidor web no es lo más aconsejable. Pero hace poco me he metido con Activiti y BPMN (Business Process Modeling), y sinceramente era la forma más lógica para empezar a jugar con esta tecnología.
Más pronto que tarde, empecé a encontrarme con los problemas de compilación para generar los WAR que desplegaría en el Glassfish. Me había pasado antes que por alguna razón, la carpeta de Build se me quedaba bloqueada, pero no con tanta frecuencia.
Al principio, al no saber qué ocurría, me limitaba a apagar el Netbeans, y el problema se solucionaba. Pero al ser tan frecuentes, pronto me pregunté qué era lo que bloqueaba la carpeta Build de forma tan catastrófica.
Me hice con el Unlocker, no por desbloquear y ya está, sino porque te dice quién está bloqueando los archivos, y mira por dónde que se trataba del propio Glassfish.
Instalación y puesta en marcha de Oracle Service Bus
Publicado: May 4, 2015 de elvenbyte en TecnologíaEtiquetas:Destacado, SOA
Algunas veces te hacen encargos que parecen sencillos, teniendo en cuenta que ya has utilizado la herramienta anteriormente, y sin embargo se te complica en la instalación llevándote días conseguir hacelo funcionar. Para colmo la información que hay en Internet es poca y en otros idiomas, y teniendo en cuenta que el proveedor tampoco da una información clara, ahí dejo una guía de cómo conseguir ponerlo en funcionamiento, con la intención de que quien la encuentre no tenga que pasarse días en ello.
Trabajando con cachés IV
Publicado: marzo 28, 2015 de elvenbyte en TecnologíaEtiquetas:Cachés, Destacado