Я пытаюсь использовать REGEXP_SUBSTR
для обновления столбца в таблице, и я получаю сообщение об ошибке, отсутствующее.REGEXP_SUBSTR для обновления таблицы
UPDATE p_table SET f_name = SELECT REGEXP_SUBSTR ((SELECT user_name
FROM user_info
WHERE ROWID = R_ID ('user_info')), '[^ ]{1,15}', 1, 1)
FROM DUAL;
Когда я добавляю скобки перед первым выбрать и после двойного он работает, но устанавливает все строки в этом столбце с тем же значением. Мне не нужны все, чтобы они были уникальными, но я не могу иметь их одинаковыми. Спасибо за любые советы, которые вы могли бы мне дать.
UPDATE p_table SET f_name = (SELECT REGEXP_SUBSTR ((SELECT user_name
FROM user_info
WHERE ROWID = R_ID ('user_info')), '[^ ]{1,15}', 1, 1)
FROM DUAL);
Это «,» после «1» на второй последней строке. Он ожидает, что еще что-то последует ... –
Ваше выражение, кажется, немного пропало, но я думаю, что это было потеряно при копировании. Ваш подзапрос, похоже, не коррелирует с таблицей, которую вы обновляете; подзапрос будет генерировать одно значение (я думаю), поэтому все строки будут установлены в одно и то же значение. Как вы хотите генерировать значения - какова связь между этими двумя таблицами? –
Спасибо, что поймали это. Я обновил приведенные выше заявления. – user2697655