Recibo un error de sintaxis 1064 en mysqlworkbench para el procedimiento almacenado que estoy tratando de crear. el procedimiento almacenado se basa en una vista que creé.
esta es mi opinión basada en el conjunto de datos ( https://www.kaggle.com/gregorut/videogamesales ):
Create View CodSales AS SELECT Name, Platform, Year, Global_Sales FROM vgsales WHERE Name LIKE 'Call of Duty:%' ORDER BY Global_Sales DESC;y este es el procedimiento almacenado basado en Ver con un parámetro:
CREATE PROCEDURE CallofDuty_Sales @Name varchar(25) AS SELECT * FROM CodSales WHERE Name = @Name GO; Exec CallofDuty_Sales @Name = 'Call of Duty: Black Ops'Hice el procedimiento almacenado basado en el ejemplo que se muestra en https://www.w3schools.com/sql/sql_stored_procedures.asp
Su código es para el servidor sql, que no funciona en mysql
debe ser
DELIMITER // CREATE PROCEDURE `CallofDuty_Sales` (IN _Name varchar(25)) BEGIN SELECT Name, Platform, Year, Global_Sales FROM vgsales WHERE Name LIKE CONCAT(_Name,'%') ORDER BY Global_Sales DESC; END// DELIMITER ; CALL CallofDuty_Sales ('Call of Duty: Black Ops');