【问题标题】:CONCAT in sql developer [duplicate]sql开发人员中的CONCAT [重复]
【发布时间】:2019-03-06 09:09:16
【问题描述】:

它没有运行,请告诉我哪里出错了?

SELECT CONCAT(FIRST_NAME,',',LAST_NAME) as full_name FROM EMPLOYEES;

【问题讨论】:

  • 尝试使用 SQL 运算符||...
  • 您是否查看了文档以了解有效的参数数量是多少?
  • 顺便说一句:将错误消息添加为文本而不是图像
  • 为了将来参考,StackOverflow 是一个包含以前回答问题的大型存储库。搜索 [oracle] concat ora-00909 很快就会给你一个解决方案。

标签: sql oracle concatenation concat


【解决方案1】:

使用 ANSI SQL 的 || 代替连接:

SELECT FIRST_NAME || ',' || LAST_NAME as full_name FROM EMPLOYEES;

CONCAT() 函数只接受两个参数。)

【讨论】:

  • 我知道,但想用 CONCAT 函数进行测试
  • 为什么? || 便携且灵活。
【解决方案2】:

Concat 只需要两个 Parameter,所以你必须使用嵌套的 concats:

SELECT CONCAT(CONCAT(FIRST_NAME,','), LAST_NAME) as full_name FROM EMPLOYEES;

欲了解更多信息,请参阅Oracle documentation

【讨论】:

    【解决方案3】:

    concat 需要 2 个参数。尝试使用它两次,例如:

    SELECT CONCAT(CONCAT(FIRST_NAME,','), LAST_NAME) as full_name FROM EMPLOYEES;
    

    【讨论】:

    • 非常感谢 ;)
    【解决方案4】:

    concat(String, String) 仅使用 2 个参数。 如果你想使用','

    SELECT FIRST_NAME||','||LAST_NAME as full_name FROM EMPLOYEES
    

    【讨论】:

      猜你喜欢
      • 2018-09-13
      • 1970-01-01
      • 1970-01-01
      • 2015-07-10
      • 2016-07-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-21
      相关资源
      最近更新 更多