MarcosBL

Aprendiz de todo, maestro de nada

Categoría: MySQL

COUNT(*) contra COUNT(col)

¿ Pero eso no es lo mismo ? ¿ Existe alguna diferencia ? Si, existe, y es bastante importante, tanto en resultados como en velocidad. COUNT(*) cuenta registros. Si la tabla es MyISAM, y no fijamos un WHERE, los resultados se calcularñan de forma extremadamente rápida, ya que MyISAM mantiene un contador de registros de toda la tabla. Si fijamos…

Consultas MySQL útiles

Las 10 bases de datos más grandes del servidor [mysql] SELECT count(*) TABLES, table_schema,concat(round(sum(table_rows)/1000000,2),’M’) rows, concat(round(sum(data_length)/(1024*1024*1024),2),’G’) DATA, concat(round(sum(index_length)/(1024*1024*1024),2),’G’) idx, concat(round(sum(data_length+index_length)/(1024*1024*1024),2),’G’) total_size, round(sum(index_length)/sum(data_length),2) idxfrac FROM information_schema.TABLES GROUP BY table_schema ORDER BY sum(data_length+index_length) DESC LIMIT 10; [/mysql]

Records de Bugs en MySQL

Casi 20 meses después de su notificación, el Bug#12713 por fin ha sido corregido (si no utilizas funciones almacenadas, esto no te afecta demasiado). El motivo de este retraso no es la dejadez, sino simplemente que se trata de un bug derivado del propio diseño interno de MySQL, y ha sido extremadamente dificil de corregir, teniendo que esperar a estas…

El tiempo en MySQL, de forma simple

Si vienes de otros mundos SQL, estarás acostumbrado a utilizar DATEDIFF y DATEADD para tus consultas entre/a partir de/hasta determinadas fechas. Si bien MySQL dispone también de esta función, nos ofrece además una forma mucho más sencilla de realizar estos cálculos, con la sintaxis INTERVAL: Hace 5 minutos: [mysql] SELECT NOW() – INTERVAL 5 MINUTE [/mysql] Dentro de una semana:…