2017-02-28 58 views
1

有人可以幫我一下嗎? 所以我需要編寫一個用戶輸入函數,我需要連接兩個字符串。輸出時,兩個字符串之間必須有空格,請注意輸入它們時兩個字符串中沒有空格。測試函數如下,字符串1:Spring,String 2:Break!sql創建函數

這是我的解決方案:

create function concatenate(X CHAR,Y CHAR) 
Returns CHAR(50) 
Return concat(X, ' ', Y); 

select concatenate('Spring','Break') 

然而,問題是,SQL只返回每個字,這是「S B」的第一個字母。但我希望它是「春假」 任何想法在這一個?幫助非常讚賞

回答

0

電源輸入參數的長度,以及:

create function concatenate(X CHAR(24),Y CHAR(24)) 
Returns CHAR(50) 
Return concat(X, ' ', Y); 

select concatenate('Spring','Break') 
+0

謝謝。我知道了。真的很感謝你的幫助 –

+0

在這種情況下,請將答案標記爲已接受,以向其他觀看者指示已經解決了問題。 – Shadow

0

你需要的時候,你聲明的說法來定義大小。

create function con(X char(50), Y char(50)) 
returns char(100) 
+0

非常感謝。它現在的作品 –

+0

很高興幫助! – Krishnakumar

+0

重複以前提供的相同答案的重點是什麼? – Shadow

0

您必須指定CHAR()的大小,否則將使用默認的CHAR(1),並且你不能得到想要你想要的。

如:

create function hello(x char(10),y char(10)) 
    returns char(30) deterministic 
    return concat(x,' ',y)` 

    select hello('Hello','World'); 
     Hello World