代码之家  ›  专栏  ›  技术社区  ›  Ye Htun Z

如何在mysql中定义的位置之间插入字符进行选择

  •  0
  • Ye Htun Z  · 技术社区  · 9 年前
    Id | news_photoId_head
    -----------------------------
     1 | apple.jpg
     2 | banana.png
     3 | getmesones.hel.apn.jpg
    ------------------------------
    

    应用程序_T.jpg
    巴纳纳_T.png
    获取mesones.hel.apn_T.jpg
    我想获取缩略图和大小的格式
    我有很长的疑问要做这件事请告诉我一个简单的方法

    select 
    concat(substring(news_photoId_head,1,char_length(news_photoId_head)-4),
    concat('_T',substring(news_photoId_head,-4))) as thumb from news;
    
    2 回复  |  直到 9 年前
        1
  •  0
  •   O. Jones    9 年前

    这种事情在MySQL中非常困难。

    你可以试试这个:

    LEFT(colname, CHAR_LENGTH(colname)-4)
    

    获取不带 .jpg .png .

    RIGHT(colname, 4)
    

    让你 .jpg格式 .png格式 .

    所以

      CONCAT(LEFT(colname, CHAR_LENGTH(colname)-4), '_T' ,RIGHT(colname, 4))
    

    生成所需的结果。表达式的附加值是 RIGHT() 以及使用三个参数(而不是两个) CONCAT() .

    当然,如果一些笨蛋把一个名为 confusion.jpeg 两年后回到你的餐桌。

        2
  •  0
  •   Abhishek Sharma    9 年前

    获取图像格式 jpg ,请尝试以下查询:

    SELECT SUBSTRING_INDEX(SUBSTRING(news_photoId_head, -4),'.',-1) FROM users WHERE 1