2017-11-10 6 views
0

私はクエリを実行しようとしていますが、欠落している式の連結に関するエラーが表示されます。私は2つの列を連結し、最初の列から最初の文字と2番目の列から全体の値を取得することによって、1つの列の値が別のテーブルから挿入されている挿入クエリを構築しています。 Heres my query。部分文字列と連結演算を一緒に使用する方法

SQL> INSERT INTO MSGG_USER (USERNAME) 
SELECT substr (GIVEN_NAME, 1,1)GIVEN_NAME, || '' || SURNAME 
FROM MSGG_PEOPLE; 

答えて

2

あなただけの直接SUBSTR()に電話を連結、GIVEN_NAMEの第二の言及は必要ありません。私の頭の上オフ

INSERT INTO MSGG_USER (USERNAME) 
SELECT SUBSTR(GIVEN_NAME, 1, 1) || SURNAME; 

、あなたがしようとしている可能性があるかのように見えます部分文字列呼び出しの別名はGIVEN_NAMEです。いずれの場合でも、列が挿入操作に直接供給されているため、selectステートメントにエイリアスは必要ありません。

編集:

あなたはすべて小文字に最初の最初と最後の名前を挿入したい場合は、あなたがLOWERでこれらの用語を包む試すことができます。

INSERT INTO MSGG_USER (USERNAME) 
SELECT LOWER(SUBSTR(GIVEN_NAME, 1, 1)) || LOWER(SURNAME); 
+0

に上記選択された列を挿入する方法小文字ですか? – Rahila

+0

右括弧が欠けていると言われています – Rahila

+0

MSGG_USER(ユーザー名、パスワード) SELECT LOWER(SUBSTR(GIVEN_NAME、1,1)|| SURNAME、 UPPER(substr(GIVEN_NAME、1,1)|| SURNAME || ' _PASS ' FROM MSGG_PEOPLE;それは私に値のエラーが表示されるので、2つの列の挿入を行う方法ありがとう – Rahila

関連する問題