CREATE DEFINER=root@localhost
PROCEDURE AccountReqs( IN IsNewAccountStart VARCHAR (255)
, In AccountName varchar (255)
, IN AccountNumber varchar(255)
, In PaymentTerm varchar(255)
, IN Batch varchar (255)
, In AdditionalEmailAddresses varchar (500)
, In WorkEmail varchar(500)
, In PersonalEmail varchar (500) )`
BEGIN
SELECT * FROM ACCOUNTS
WHERE IsNewAccountStart <>'TRUE' AND IsNewAccountStart <>' '
Union all
SELECT * FROM ACCOUNTS WHERE AccountName=' '
Union all
SELECT * FROM ACCOUNTS WHERE AccountNumber=' '
Union all
SELECT * FROM ACCOUNTS
WHERE PaymentTerm <> 'Net 30'
AND PaymentTerm <> 'Net 45'
AND PaymentTerm <> 'Net 60'
AND PaymentTerm<> 'Due Upon Receipt'
Union All
SELECT * FROM ACCOUNTS WHERE Batch <> 'Batch1';
SELECT * FROM ACCOUNTS
WHERE AdditionalEmailAddresses <> ' '
OR WorkEmail <> ' '
OR PersonalEmail <> ' ';
END
MySQL Stored Procedure – Call from One DB to Get Result in Another
MySQLmysql-5.6mysql-workbenchstored-procedures
Related Question
- Mysql – ERROR 1166 (42000) at line 65203: Incorrect column name ”
- Mysql – Update MySQL Stored Procedure Definers on shared environment
- Sql-server – Getting Machine name from where stored procedure was last executed
- MySQL – Cannot Create Federated View in MariaDB
- Sql-server – How to handle errors in a transaction in a stored procedure
- Sql-server – Insert results of spBlitzIndex stored procedure into table
Best Answer
SUGGESTION #1
You need to explicitly set the database before calling the Stored Procedure
SUGGESTION #2 (OPTIONAL)
Since you have all these
UNION
clauses against the same table, try combining all theWHERE
clauses under a singleSELECT
. I see two SELECTs in your original question. Therefore, the Stored Procedure should look more like this: