sql >> Database teknologi >  >> RDS >> Mysql

MySQL foreach alternativ til procedure

Her er mysql-reference for markører . Så jeg gætter på, at det er sådan her:

  DECLARE done INT DEFAULT 0;
  DECLARE products_id INT;
  DECLARE result varchar(4000);
  DECLARE cur1 CURSOR FOR SELECT products_id FROM sets_products WHERE set_id = 1;
  DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;

  OPEN cur1;

  REPEAT
    FETCH cur1 INTO products_id;
    IF NOT done THEN
      CALL generate_parameter_list(@product_id, @result);
      SET param = param + "," + result; -- not sure on this syntax
    END IF;
  UNTIL done END REPEAT;

  CLOSE cur1;

  -- now trim off the trailing , if desired


  1. Administration af høj tilgængelighed i PostgreSQL – Del II:Replikeringsmanager

  2. Vælg seneste post fra højre tabel, når du bruger join i mysql

  3. T-SQL-fejl, faldgruber og bedste praksis – pivotering og unpivotering

  4. SQL-antal