Задавайте вопросы, мы ответим
Вы не зашли.
Добрый день! Помогите, пожалуйста. Есть созданная пустая таблица и есть хранимая процедура. По заданию нужно использовать RAND, а тип данных в price INT или DECIMAL ( что с RAND дает просто 0). Нужно, чтобы даты присваивались разные, а category_id от 1 до 100 присваивалась случайным образом. Как это сделать? Не могу справиться с этими последними тремя столбцами- price,category_id и last_delivery.
CREATE TABLE products
(
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255) NOT NULL,
price INT NOT NULL,
category_id INT NOT NULL,
FOREIGN KEY (category_id) REFERENCES categories(id),
last_delivery DATE
);
DELIMITER $$
CREATE PROCEDURE add_products()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i <= 5000 DO
INSERT INTO products (name, price, category_id, last_delivery)
VALUES (CONCAT('product',i), ????????);
SET i = i + 1;
END WHILE;
END $$
Отредактированно Катерина94 (08.06.2020 23:16:46)
Неактивен
Катерина94 написал:
Нужно, чтобы даты присваивались разные,
например,
now() - interval i day
Катерина94 написал:
а category_id от 1 до 100 присваивалась случайным образом.
round(rand()*99)+1
Неактивен
vasya, спасибо большое!) Работает! Сама бы не справилась
Неактивен