Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PostgreSQL > Соединить две таблицы


Автор: Ccoder 7.8.2011, 08:45
Здравствуйте.
Невыходит некак сделать запрос

Создаю таблицы так
Код

CREATE TABLE aa1.temp1
(
  "startIpNum" bigint,
  "endIpNum" bigint,
  "locId" integer
)
WITH (
  OIDS=FALSE
);
ALTER TABLE aa1.temp1 OWNER TO aa1;


Код

CREATE TABLE aa1.temp2
(
  locid integer,
  country character varying(2),
  region character varying(2),
  city character varying(50),
  postalcode character varying(10),
  latitude real,
  longitude real,
  dmacode integer,
  areacode integer
)
WITH (
  OIDS=FALSE
);
ALTER TABLE aa1.temp2 OWNER TO postgres;


И хочу соединить их по locid столбцу
Пытаюсь выполнить такой код
Код

SELECT A.locid, A.country, A.region, A.city, A.postalcode, A.latitude, A.longitude, A.dmacode, A.areacode
 FROM aa1.temp1 AS A, aa1.temp2 AS B WHERE A.locid = B.locId


получаю
Цитата

ERROR:  column a.locid does not exist
LINE 1: SELECT A.locid, A.country, A.region, A.city, A.postalcode, A...
               ^

********** Error **********

ERROR: column a.locid does not exist
SQL state: 42703
Character: 8


Вроде как должно работать, но неработает....

Автор: Ccoder 7.8.2011, 09:56
P.S.

И ещё хотел-бы спросить. У меня путь таблицы указываеться в виде 
Цитата

схема.имя_таблица

тоесть в начале идёт имя схемы, а через точку имя таблицы.
Но почему-то в примерах из документация при указании путя я вижу только имя таблицы и толком немогу понять из-за чего это.
Но вробе-бы мне нужно вводить имя схемы, так как без него получаеться неправильная таблица.
Очень хотелбы докапаться до сути. Т.е. почему мне нужно указывать сначала имся схемы?

Автор: Ccoder 7.8.2011, 17:14
Уже понял в чём тут дело. 
имя temp1 какое-то толи служебное, то-ли какое-то плохое.
С другим всё работает.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)