0
誰かがこのコードを助けてくれますか? level_idフィールドに5番目のレコードから始まる1の値を正確に入れる方法を理解できません。それはいつも私はよくあなたの問題を理解していれば0が、その後6番目のレコードが1mysqlのレコードのレベルid値(ユーザ定義フィールド["level_id"])の決定について
CREATE DEFINER=`root`@`localhost` PROCEDURE `sp_EncodePerson`(
in p_memberId varchar(45),
in p_encodeId varchar(100))
BEGIN
DECLARE Lev0 varchar(5);
DECLARE Lev1 varchar(5);
SET Lev0 = "0";
SET Lev1 = "1";
SELECT @total := count(*) from gph_acquiredpeople
where member_Id = p_memberId;
IF @total <= 4 THEN
INSERT INTO gph_acquiredpeople
(member_id,encoded_mem_Id,date_encoded,level_id)
VALUES (p_memberId,p_encodeId,NOW(),Lev0);
UPDATE gph_memberstatus SET available ="0", taken = "1"
WHERE Id_number = p_encodeId;
ELSEIF @total = 5 OR @total >= 5 AND @total < 25 THEN
INSERT INTO gph_acquiredpeople
(member_id,encoded_mem_Id,date_encoded,level_id)
VALUES (p_memberId,p_encodeId,NOW(),Lev1);
UPDATE gph_memberstatus SET available ="0", taken = "1"
WHERE Id_number = p_encodeId;
ELSE
BEGIN
END;
END IF;
END
おかげで、。私はすでに仕事をしていないので、来週までに試してみます。 – Metasphere
先生、レコード番号と違う場合はどうですか?純粋に、レコード数。何か方法はありますか? – Metasphere
私はあなたが望むものを完全に理解していません。代わりにレコード番号をチェックするために、レコード数で実際に行われる '@ total'でチェックを変更しますか? –