Гость
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / копирование полей / 11 сообщений из 11, страница 1 из 1
24.10.2013, 14:37
    #38439935
grommilitary
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
Подскажите товарищи, использую
INSERT INTO aaaa (xx) SELECT yy FROM bbbb
В результате yy из bbbb копируется в xx таблицы aaaa.Вопрос: почему все скопированные записи поместились не с начала (с первой записи) в поле xx, а с позиции n = количеству записей следующего поля из этой же таблицы?
...
Рейтинг: 0 / 0
24.10.2013, 14:43
    #38439955
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
grommilitaryПодскажите товарищи, использую
INSERT INTO aaaa (xx) SELECT yy FROM bbbb
В результате yy из bbbb копируется в xx таблицы aaaa.Вопрос: почему все скопированные записи поместились не с начала (с первой записи) в поле xx, а с позиции n = количеству записей следующего поля из этой же таблицы?

Либо репо-код давай, либо картинку покажи, что получилось (и реальный запрос приведи)
...
Рейтинг: 0 / 0
24.10.2013, 14:44
    #38439959
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
grommilitaryколичеству записей следующего поля
Вообще-то запись содержит поля, а не поля состоят из записей.

INSERT добавляет запись и заполняет указанные поля, остальные поля (если есть) остаются пустыми (точнее заполняются значениями по умолчанию).
...
Рейтинг: 0 / 0
24.10.2013, 14:55
    #38439979
grommilitary
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
я не правильно написал... как столбец одной таблицы скопировать в столбец другой?
...
Рейтинг: 0 / 0
24.10.2013, 14:58
    #38439989
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
grommilitaryя не правильно написал... как столбец одной таблицы скопировать в столбец другой?

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
CREATE CURSOR test (f1 int)

CREATE CURSOR test1 (f1 int)


INSERT INTO test VALUES (1)
INSERT INTO test VALUES (2)

INSERT INTO test1 (f1) SELECT f1*1000 FROM test

SELECT test1 
BROWSE 
...
Рейтинг: 0 / 0
24.10.2013, 15:03
    #38440002
Sergey Sizov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
grommilitaryя не правильно написал... как столбец одной таблицы скопировать в столбец другой?И опять неправильно. Нельзя копировать столбец. Можно скопировать данные поля(поле - это то, что ты называешь столбцом).
При этом, как я понял, надо заменить значения поля в уже имеющихся записях. Для этого команда Insert никак не может подходить ибо она добавляет записи и никогда не трогает уже имеющиеся записи так как замена значений в записи есть обновление (UPdate), а никак не вставка(Insert).

Таким образом приходим к выводу, что нужна команда Update с условием связывания записей, из которых надо взять значения, с записями, в которых надо изменить значения в нужном поле.
Короче:
Как изменить значения в одной таблице данными из другой
...
Рейтинг: 0 / 0
24.10.2013, 15:12
    #38440020
Dima T
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
grommilitaryя не правильно написал... как столбец одной таблицы скопировать в столбец другой?
Нет, ты неправильно понимаешь. Таблицы это не листы экселя, Нельзя просто так кусок одной таблицы воткнуть в другую.

Поищи книжку про основы SQL и почитай.
Вот например
...
Рейтинг: 0 / 0
24.10.2013, 15:28
    #38440059
grommilitary
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
Спасибо
...
Рейтинг: 0 / 0
28.10.2013, 12:37
    #38443290
grommilitary
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
Дабы не плодить темы спрошу здесь...Вопрос в следующем:
есть таблица tab в ней 2 поля pol1,pol2
pol1| pol2
1________
_______ 2
3________
________4
5________
Надо либо поместить все в pol1 либо в другое поле этой таблицы,результат
pol1
1
2
3
4
5
...
Рейтинг: 0 / 0
28.10.2013, 13:00
    #38443347
PaulWist
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
grommilitaryДабы не плодить темы спрошу здесь...Вопрос в следующем:
есть таблица tab в ней 2 поля pol1,pol2
pol1| pol2
1________
_______ 2
3________
________4
5________
Надо либо поместить все в pol1 либо в другое поле этой таблицы,результат
pol1
1
2
3
4
5

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
CREATE CURSOR test (f1 int, f2 int)

INSERT INTO test (f1) VALUES (1)
INSERT INTO test (f1) VALUES (3)
INSERT INTO test (f1) VALUES (5)

INSERT INTO test (f2) VALUES (2)
INSERT INTO test (f2) VALUES (4)

SELECT f1 FROM test WHERE !EMPTY(f1);
UNION ;
select f2 FROM test  WHERE !EMPTY(f2)

SELECT test 
UPDATE test SET f1 = f2 WHERE !EMPTY(f2) AND EMPTY(f1)
BROWSE 
...
Рейтинг: 0 / 0
28.10.2013, 13:17
    #38443390
grommilitary
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
копирование полей
спасибо большое!
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / копирование полей / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]