MySQL to JSON no es mas que una manera de ahorrar codificación del lado del servidor y también ayudar a disminuir el tiempo valioso de respuesta.
La manera mas simple y con mejor rendimiento si se quiere trabajar con JSON seria que la misma bd te devolviera los resultados en dicho formato.
Usando las funciones CONCAT() y GROUP_CONCAT() lograriamos construir el JSON directamente desde la consulta SQL.
Ejemplo
Para este ejemplo construiremos una tabla sencilla de usuarios(para variar)
CREATE TABLE `user`(
`id` int not null auto_increment,
`name` varchar(100),
`email` varchar(50),
PRIMARY KEY(id)
) ENGINE = InnoDB;
Luego insertaremos unos cuantos registros.
INSERT INTO `user` (`name`, `email`) VALUES
('Cesar', 'cesar@craftyman.net'),
('Maria', 'maria@gmail.com'),
('Jose', 'j0s3@hotmail.com'),
('Albert','albertpr@yahoo.com');
Finalmente realizaremos la consulta que nos traera el JSON.
SELECT
CONCAT( "[",
GROUP_CONCAT(
CONCAT("{name:'",`name`,"'"),
CONCAT(",email:'",`email`,"'}")
)
,"]")
AS json FROM users;
resultado:
[
{
name : 'Cesar',
email: 'cesar@craftyman.net'
},
{
name : 'Maria',
email: 'maria@gmail.com'
},
{
name : 'Jose',
email: 'j0s3@hotmail.com'
},
{
name : 'Albert',
email: 'albertpr@yahoo.com'
}
]
Tags:
Posteado el: 11/02/2009
por: Craftyman

Comentarios