Я пытаюсь создать базу данных для movielens (http://grouplens.org/datasets/movielens/). У нас есть фильмы и рейтинги. Фильмы имеют несколько жанров. Я разделил их на отдельный стол, так как это соотношение 1: много. Есть много: много отношений, а также пользователей фильмов. Мне нужно иметь возможность запрашивать эту таблицу несколькими способами.Данные CSV-файла в таблицу PostgreSQL
Так что я создал:
CREATE TABLE genre (
genre_id serial NOT NULL,
genre_name char(20) DEFAULT NULL,
PRIMARY KEY (genre_id)
)
.
INSERT INTO genre VALUES
(1,'Action'),(2,'Adventure'),(3,'Animation'),(4,'Children\s'),(5,'Comedy'),(6,'Crime'),
(7,'Documentary'),(8,'Drama'),(9,'Fantasy'),(10,'Film-Noir'),(11,'Horror'),(12,'Musical'),
(13,'Mystery'),(14,'Romance'),(15,'Sci-Fi'),(16,'Thriller'),(17,'War'),(18,'Western');
.
CREATE TABLE movie (
movie_id int NOT NULL DEFAULT '0',
movie_name char(75) DEFAULT NULL,
movie_year smallint DEFAULT NULL,
PRIMARY KEY (movie_id)
);
.
CREATE TABLE moviegenre (
movie_id int NOT NULL DEFAULT '0',
genre_id tinyint NOT NULL DEFAULT '0',
PRIMARY KEY (movie_id, genre_id)
);
Я не знаю, как импортировать мой movies.csv с колоннами movie_id, MOVIE_NAME и movie_genre Например, первая строка (1;Toy Story (1995);Animation|Children's|Comedy)
Если я ввожу вручную, он должен быть выглядеть следующим образом:
INSERT INTO moviegenre VALUES (1,3),(1,4),(1,5)
Потому что 3 - это анимация, 4 - это дети и 5 - комедия
Как я могу импортировать все данные, установленные таким образом?
Как вы загружаете свои данные с помощью COPY? Или вы редактируете текстовые файлы? –
Я закачаю мои данные COPY – KTBFFH