【发布时间】:2014-01-06 09:57:26
【问题描述】:
我有以下创建语句:
CREATE TABLE venues
(
id integer NOT NULL,
fs_id varchar,
name varchar,
phone varchar,
address varchar,
latitude double precision,
longitude double precision,
city varchar,
state varchar,
country varchar,
category_fs_id varchar,
category_name varchar,
CONSTRAINT pk_venue_id PRIMARY KEY (id)
);
我可以通过一个查询得到我想要的,但是列太多了,所以我可以再创建一个表,例如:
CREATE TABLE venues
(
id integer NOT NULL,
fs_id varchar,
name varchar,
category_fs_id varchar,
category_name varchar,
venue_info_id integer,
CONSTRAINT pk_venue_id PRIMARY KEY (id)
CONSTRAINT fk_venue_info_id FOREIGN KEY (venue_info_id)
REFERENCES venue_info (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
CREATE TABLE venue_info
(
phone varchar,
address varchar,
latitude double precision,
longitude double precision,
city varchar,
state varchar,
country varchar,
);
但在此之后,我应该为选择查询中的每个插入和连接表编写两个查询 它会降低性能还是即使在这种情况下我也可以用一个查询来做到这一点?
【问题讨论】:
-
“列太多”是为了什么?
标签: sql postgresql normalization