【问题标题】:SQL - How to form a string by concatenating semicolons to a number?SQL - 如何通过将分号连接到数字来形成字符串?
【发布时间】:2012-09-28 20:36:46
【问题描述】:

特别是 MySQL,但我猜答案应该是通用的。

首先我将一个变量设置为这样的数字:

SET @somenumber:=LAST_INSERT_ID();

请注意,LAST_INSERT_ID() 基本上相当于 MySQL 的 SCOPE_IDENTITY()。接下来我尝试通过将分号连接到这个数字来创建一个字符串:

SET @somestring:=';'+@somenumber+';';

最后我尝试将其作为字符串插入:

INSERT INTO `sometable` (`somevarcharcolumn`) VALUES (somestring);

而结果就是列中只加了数字,分号不见了。

谁能指出我做错了什么或者我需要做什么才能让它发挥作用?非常感谢!

【问题讨论】:

  • + 不是加法运算符吗?对于字符串连接,请使用 CONCAT 函数
  • 阅读CONCAT_WS的手册
  • 对,就是加法运算符。我正在阅读一个来源,暗示它也用于连接。非常感谢。

标签: mysql sql concatenation


【解决方案1】:

希望对你有帮助

//MySQL
SET @somestring:=CONCAT(';',@somenumber,';');

//SQL Server
SET @somestring = ';'+CAST(@somenumber AS VARCHAR)+';';

//Oracle
SET somestring_ :=';' || somenumber_ || ';';

【讨论】:

    猜你喜欢
    • 2018-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-06-06
    • 1970-01-01
    • 2021-10-31
    • 2011-02-24
    • 1970-01-01
    相关资源
    最近更新 更多