sql创建一个函数

时间:2017-02-28 05:57:20

标签: mysql sql string function

有人可以帮我这个吗? 所以我需要编写一个用户输入函数,我需要在其中连接两个字符串。输出时,两个琴弦之间必须有一个空格,注意输入时两个琴弦中没有空格。使用以下函数测试函数,字符串1:Spring,String 2:Break!

这是我的解决方案:

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

select concatenate('Spring','Break')

然而,问题是sql只返回每个单词的第一个字母,即“S B”。但我希望它是“春假” 关于这个的任何想法?帮助非常感谢

3 个答案:

答案 0 :(得分:0)

也为输入参数提供长度:

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

select concatenate('Spring','Break')

答案 1 :(得分:0)

您需要在声明参数时定义大小。

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

答案 2 :(得分:0)

你必须指定CHAR()的大小,否则它将使用默认的CHAR(1),你不能得到你想要的。

例如:

instance TestEquality TokKind where
  testEquality IdLower  IdLower  = Just Refl 
  testEquality IdUpper  IdUpper  = Just Refl 
  testEquality IdSymbol IdSymbol = Just Refl 
  testEquality IdColon  IdColon  = Just Refl 
  testEquality Equal    Equal    = Just Refl 
  testEquality Newline  Newline  = Just Refl 
  testEquality _        _        = Nothing