Я пытаюсь создать процедуру, которая возвращает таблицу с некоторой информацией из моей базы данных, в которой перечислены номера отеля, количество клиентов, использующих каждый тип своих кредитных карт в отеле.Построение таблицы с использованием процедур
Имея в виду, что существует более 50 отелей и 3 типов кредитных карт, я хочу, чтобы процедура пробежать данных и список, то в таблице
DELIMITER //
DROP PROCEDURE IF EXISTS `testing` //
CREATE PROCEDURE `testing`(OUT param1 VARCHAR(40))
BEGIN
DECLARE id_cnpjEstabelecimento VARCHAR(40);
DECLARE id_redeCartão VARCHAR(255);
SELECT (cnpjEstabelecimento)
FROM fpcsmovatlantica201308tst04;
SET id_cnpjEstabelecimento := cnpjEstabelecimento;
SELECT (id_redeCartão)
FROM fpcsmovatlantica201308tst04;
SET id_redeCartão := id_redeCartão;
SELECT count(*)
FROM fpcsmovatlantica201308tst04;
WHERE redeCartão like 'id_redeCartão%';
AND cnpjEstabelecimento like 'id_cnpjEstabelecimento%';
END //
DELIMITER ;
пример выбора
SELECT count(*)
FROM fpcsmovatlantica201308tst04
WHERE redeCartão like 'Cielo%'
AND cnpjEstabelecimento like '02223966000466%'
cnpjEstabelecimento получил несколько значений, более чем 100 +, так что это жизнеспособны сделать все выбирает
Я даже не придется использовать процедуры, чтобы сделать это, конечный результат был
SELECT cnpjEstabelecimento, redeCartão, count(*)
FROM fpcsmovatlantica201308tst04
WHERE redeCartão like 'Cielo%'
GROUP BY cnpjEstabelecimento,redeCartão like 'Cielo%'
ORDER BY cnpjEstabelecimento ASC;
Существует еще одна проблема, мне нужно, чтобы сделать процедуру, чтобы сделать эти выбирает автоматически, поэтому они проходят через базу данных и сделать эту вещь только путем вызова процедуры –