|
|
|
| мне нравится тут находиться - всегда найдется оперативная и практически он- лайн помощь :-)
Возник следующий вопрос, который не могу сам разрешить или найти в книгах.
Имею текстовое поле [txt_Должность], решил внедрить [int_Должность_1] и заполнить его из справочника с полями [int_id], [txt_Должность], которые я сформировал из предыдущей таблицы.
Что я пытался сделать:
UPDATE "my_tabl" set "int_Должность_1" value ( а тут надо написать int_id, при этом связать 2 таблицы). (Кавычки указал для наглядности)
SELECT выглядит и работает нормально | |
|
|
|
|
|
|
|
для: larush
(12.09.2005 в 12:49)
| | А не могли бы вы привести структуру таблиц (получить её можно при помощи оператора SHOW CREATE TABLE)? Указать свою версию MySQL?
При работе оператора UPDATE с двумя таблицами вам потребуется писать
UPDATE tbl1, tbl2 SET ...
|
Т.е. указать обе таблицы и использовать расширенные имена, но для составления конкретного запроса нужно больше информации, так как не очень понятно... | |
|
|
|
|
|
|
|
для: cheops
(12.09.2005 в 13:41)
| | Вот до 3.23 - UPDATE в MySQL, по моему, точно мог только одну таблицу упдатить, а старше не знаю, нужно посмотреть описание синтаксиса UPDATE. | |
|
|
|
|
|
|
|
для: cheops
(12.09.2005 в 13:41)
| | версия 4.0.18-nt
струтура таблиц до ужаса простая
CREATE TABLE 'sp_sec' (
'id' tinyint(2) NOT NULL auto_increment,
'sector' varchar(40) NOT NULL default '',
PRIMARY KEY ('id')
) TYPE=MyISAM
CREATE TABLE 'main' (
'id' int(11) NOT NULL auto_increment,
'fam' varchar(80) NOT NULL default '',
'otdel' tinyint(2) NOT NULL default '0',
'sec' varchar(30) NOT NULL default '0',
PRIMARY KEY ('id')
) TYPE=MyISAM
так вот сначала я залил из экспортнутого excell справочника данные, в которых сектор был текстовым (поле SEC). Затем я сделал таблицу sp_sec, которую заполнил уникальными значениями из MAIN.SEC. Теперь я хочу внести вместо текстового значения названия сектора, его идентификатор (поле OTD). | |
|
|
|
|
|
|
|
для: larush
(12.09.2005 в 19:00)
| | Запрос должен выглядеть примерно следующим образом
UPDATE sp_sec, main SET main.sec = sp_sec.id
WHERE main.sec = sp_sec.sector
|
| |
|
|
|
|
|
|
|
для: cheops
(13.09.2005 в 01:42)
| | Спасибо ! Действительно все получилось :-) | |
|
|
|