Posts Tagged ‘bases de datos’

VoltDB es un coche de F1, mientras que MySQL y Oracle son “fititos”

By Luigi Keynes

Al menos eso prometen los desarrolladores de VoltDB quienes afirman que su sistema de bases de datos es unas 50 veces mas veloz que MySQL y Oracle.

Es un sistema de bases de datos relacionales creado por Michael Stonebraker, que tambiñen participó en el desarrollo de Ingres y PostgreSQL. Se caracteriza por que almacena datos en la memoria y no en el disco, escalado lineal, permitiendo crecer en clientes dando la misma calidad de servicio, en cada nodo tiene un motor SQL que hace de interface con el DBMS aprovechando las capacidas multinucleo de los actuales procesadores.

Están apareciendo constantemente nuevos sistemas de bases de datos mas rápidos y con mayores capacidades que MySQL, ya que las aplicaciones web cada vez son mas exigentes en este aspecto.

[Dosbit]

Comparte:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • LinkedIn
  • Meneame
  • MySpace
  • Twitter
  • Yahoo! Bookmarks
  • email
  • Live
  • RSS
  • Technorati

Un par de funciones de manejo de cadenas de MySQL

By Luigi Keynes

Estuve trabajando con las bases de datos de Boonic, haciéndolas mas rápidas y livianas; y el proceso además de cumplir con estos objetivos también me valió otros resultados positivos inesperados, entre los que se destaca haber aprendido algunas cosas interesantes de mysql.

mysql

En primer lugar quiero comentarles sobre la función de cadenas CHARACTER_LENGTH, la cual nos sirve para contar los caracteres de un campo; y se usa de esta manera:

SELECT CHARACTER_LENGTH(`campo`) FROM tabla

Esta consulta nos devolvería el conjunto de registros con un campo que tendría los números de caracteres de los registros.

Ahora podemos preguntarles por las ID (siempre que la tabla en cuestión contenga un campo de esta clase con ese nombre) de aquellos registros donde el campo ‘texto’ tiene mas de 200 caracteres; la consulta sería así:

SELECT ID FROM tabla WHERE CHARACTER_LENGTH(`texto`)>200

Otra función interesante es SUBSTRING_INDEX; la analicemos un poco:

SUBSTRING_INDEX(str,delim,count)

Esta función nos devuelve la subcadena de str anterior a la aparición de count veces de delim. Si count es positivo devuelve lo que haya a la izquierda del delimitador, si es negativo devuelve lo de la derecha. Pongamos un ejemplo para que se aclaren las cosas:

SELECT SUBSTRING_INDEX(‘www.boonic.com’, ‘.’, -2);

En esta consulta estamos solicitando que nos de la subcadena que está a la derecha de la segunda aparación del delimitador “.” contando desde la derecha. El resultado sería: “boonic.com”.

Bueno, ahora hagamos las cosas mas complicadas. Supongamos que tenemos una tabla con un campo de texto llamado ‘texto’, como verán estoy muy original con los nombres, donde tenemos al final de cada registro en este campo una dirección url en html; y queremos ver todos aquellos registros donde hay mas de 200 caracteres antes de la dirección url; la consulta sería así:

SELECT * FROM  `tabla` WHERE CHARACTER_LENGTH(SUBSTRING_INDEX(`texto`,’<a href’,1))>200

En esta última consulta combinamos las dos funciones que analizamos en el post. Estas funciones resultan muy útiles para el manejo de cadenas, así como para borrar por ejemplo posts muy pequeños o irrelevantes en una gran tabla.

Fuente: MySQL

Comparte:
  • Digg
  • del.icio.us
  • Facebook
  • Google Bookmarks
  • BarraPunto
  • Bitacoras.com
  • LinkedIn
  • Meneame
  • MySpace
  • Twitter
  • Yahoo! Bookmarks
  • email
  • Live
  • RSS
  • Technorati