【问题标题】:Substr on sql querysql查询上的substr
【发布时间】:2011-08-31 15:37:33
【问题描述】:

这个查询:

SELECT substr(d.title,0,7)
FROM orders_total d, orders o
WHERE d.orders_id = o.orders_id

给我这个错误:

#1064 - 您的 SQL 语法有错误。查看与您的 MySQL 服务器版本相对应的手册,了解在 orders_total d 的 '( d . title , '0' , '7' ) 附近使用的正确语法,orders o

它可以在没有 substr 的情况下工作,但我无法让它与它一起工作。

【问题讨论】:

    标签: mysql sql join substr


    【解决方案1】:

    来自mySql documentation

    对于所有形式的 SUBSTRING(),第一个字符的位置 要从中提取子字符串的字符串被认为是 1.

    所以你必须把 0 换成 1:

    SELECT substr(d.title,1,7)
    FROM orders_total d, orders o
    WHERE d.orders_id = o.orders_id
    

    【讨论】:

      【解决方案2】:
      SELECT LEFT(d.title,7) FROM orders_total d, orders o WHERE d.orders_id = o.orders_id
      

      【讨论】:

        【解决方案3】:

        sbustr 应该是子字符串,它从索引 1 开始,而不是 0

        【讨论】:

        • 据我所知 SUBSTR 是 SUBSTRING 的同义词
        猜你喜欢
        • 2012-11-20
        • 1970-01-01
        • 2013-12-15
        • 2020-10-07
        • 1970-01-01
        • 2018-03-08
        • 2012-05-01
        • 1970-01-01
        • 2014-09-21
        相关资源
        最近更新 更多