zoukankan      html  css  js  c++  java
  • Mysql中字符串正确的连接方法

    虽然SQL server和My sql的语句基本都一致,但是仍然存在一些小区别。就如字符串的连接来说,SQL server中的字符串连接是使用“+”来连接,不带引号sql server是做加法运算。而my sql中无论是带引号和不带引号,它都将其先转成数字型,然后在做运算。 

    SQL Server中字符串的连接:

    ps:Age=21 

    SELECT '12'+'34',Age+1 
    FROM table 

    其结果输出结果是第一列是1234,第二列是22。 

    MySQl中字符串连接: 

    SELECT '12'+'34','1abc'+'22','abc'+'3'
     FROM table 

    很惊讶发现其输出结果是:第一列为46,第二列23,第三列为3。 

    注:在Mysql中,使用“+”进行字符连接时,mysql会尝试将字段值转换为数字类型(如果转换失败,就当做数字0处理)。如’1abc’+’22′,mysql将“1abc”转成数字1在进行运算;将“abc”当做0处理。 

    在MYSQL中进行字符串的拼接要使用CONCAT函数,CONCAT函数支持一个或者多个参数,参数类型可以为字符串类型也可以是非字符串类型,对于非字符串类型的参数MYSQL将尝试将其转化为字符串类型,CONCAT函数会将所有参数按照参数的顺序拼接成一个字符串做为返回值。

    比如下面的SQL语句用于将用户的多个字段信息以一个计算字段的形式查询出来:

    SELECT CONCAT('学号:',XNumber,'的综合成绩:',FSalary/(FAge-21)) 
    FROM user 

    其输出结果是:学号2010010035的综合成绩是90。

  • 相关阅读:
    luogu P1833 樱花 看成混合背包
    luogu P1077 摆花 基础记数dp
    luogu P1095 守望者的逃离 经典dp
    Even Subset Sum Problem CodeForces
    Maximum White Subtree CodeForces
    Sleeping Schedule CodeForces
    Bombs CodeForces
    病毒侵袭持续中 HDU
    病毒侵袭 HDU
    Educational Codeforces Round 35 (Rated for Div. 2)
  • 原文地址:https://www.cnblogs.com/zhengah/p/5199843.html
Copyright © 2011-2022 走看看