SELECT y REPLACE en MySQL
Sentencia SELECT en MySQL en distintas tablas
La sentencia SELECT permite realizar consultas, ya sea en una o más tablas, en una base de datos basada en SQL. Estas consultas permiten calcular y obtener resultados de datos mediante un conjunto de cláusulas que se añaden a continuación del SELECT.
El siguiente código muestra la estructura y un ejemplo de una consulta básica.
SELECT * FROM [tabla]
El parámetro * es equivalente a todos, por tanto, en el ejemplo siguiente el resultado que devolverá la consulta serán todos los registros de la tabla productos.
SELECT * FROM productos
En lugar de * es posible indicar uno o varios campos. La siguiente plantilla y el ejemplo siguiente de consulta muestra distintas cláusulas añadidas al SELECT que permiten reducir el tiempo de consulta y la devolución de un resultado más específico.
SELECT [campo1],[campo2]
FROM [tabla]
WHERE [campo2]
BETWEEN [integer]
AND [integer]
ORDER BY [tabla] [asc|desc]
SELECT producto,peso
FROM productos
WHERE peso
BETWEEN 3
AND 5
ORDER BY producto DESC
Para hacer consultas con distintas tablas y evitar errores, debemos especificar la tabla y el campo:
SELECT [tabla1.campo1], [tabla1.campo2], [tabla1.campo3],[tabla2.campo2],[tabla3.campo1]
FROM [tabla1],[tabla2],[tabla3]
WHERE [tabla2.campo1] = [tabla3.campo3]
AND [tabla1.campo1] = [tabla3.campo1]||[valor]
Ejemplo de consulta en distintas tablas:
SELECT productos.id,productos.producto,productos.tipo,usuario.edad,comprador.user_id
FROM productos,usuario,comprador
WHERE usuario.id = comprador.user_id
AND usuario.edad = 18
Ejemplo de consulta SELECT con ORDER BY:
SELECT * FROM productos WHERE tipo = "electronica"
ORDER BY precio DESC, tipo,fechaCaducidad
ORDER BY permite asignar los campos o columnas de forma númerica.
Ejemplo de consulta SELECT con GROUP BY:
SELECT peso FROM productos
GROUP BY peso
ORDER BY peso DESC
Ejemplo de consulta SELECT con HAVING:
SELECT producto FROM productos
GROUP BY producto
HAVING peso > 5
ORDER BY peso DESC
Ejemplo de consulta SELECT con LIMIT:
SELECT producto FROM productos
LIMIT 10
Si LIMIT lleva dos parámetros el primer parámetro el inicio del primer resultado y el segundo el número de registros a devolver.
SELECT id,producto FROM productos
LIMIT 10, 5
Ejemplo de consulta con Alias:
SELECT p.id,p.producto, compras.id
FROM productos as p, compras as c
WHERE p.id=c.id
Ejemplo de consulta con IN y NOT IN:
SELECT producto,peso
FROM productos
WHERE producto IN ("procesador", "placa")
ORDER BY peso DESC
Ejemplo de consulta con BETWEEN y NOT BETWEEN:
SELECT producto,peso
FROM productos
WHERE peso
NOT BETWEEN 3
AND 5
ORDER BY producto DESC
Ejemplo de consulta con LIKE y NOT LIKE:
SELECT producto,peso
FROM productos
WHERE producto LIKE "pro%"
SELECT producto,peso
FROM productos
WHERE producto NOT LIKE "%ces%"
REPLACE
El método replace permite reemplazar una cadena o parte de una cadena mediante sentencias en MySQL.
update [tabla] set [columna] = REPLACE([columna],[cadena1],[cadena2] WHERE ID = [ID]
cadena1 : Cadena o subcadena a buscar
cadena2: Cadena de reemplazo
Ejemplo
UPDATE posts SET body=REPLACE(body,"http://", "//") WHERE ID= 274;
Para poder comentar es necesario iniciar sesión