我知道mysql --version 或者mysql -V 但是取到的信息太多了[root@localhost mnt]# mysql --version
mysql  Ver 14.14 Distrib 5.6.12, for Linux (x86_64) using  EditLine wrapper我只想打印出 5.6这个大版本号,目前用SQL语句 mysql> select substr(version(),1,3)
    -> ;
+-----------------------+
| substr(version(),1,3) |
+-----------------------+
| 5.6                   |
+-----------------------+
1 row in set (0.03 sec)
但是不知道兼容性如何,大家能否在自己的库上运行一下,不知道其他版本拿出来的对不对,
还有其他好办法也欢迎提建议,谢谢

解决方案 »

  1.   

    mysql -uroot -pxxx dbname -e "select substr(version(),1,3)">r:/temp/123.txt取123.txT中的内容即可
      

  2.   


    这个不是问题,怎么取都行,主要是这条SQL语句在历史版本库中都兼容吗,这个不确定
      

  3.   

    substr 函数是不用担心吧!
    select version()也是有的!至少我这个 5.0的都支持了!
    按照向下兼容性,5.0以后的肯定兼容
      

  4.   

    兼容。没有问题。 MYSQL所有的版本都在三个数字组成。 但不建议用 substr(version(),1,3) 
    建议使用substring_index(mysql> select version();
    +------------------+
    | version()        |
    +------------------+
    | 5.1.58-community |
    +------------------+
    1 row in set (0.09 sec)mysql> select substring_index(version(),'.',2);
    +----------------------------------+
    | substring_index(version(),'.',2) |
    +----------------------------------+
    | 5.1                              |
    +----------------------------------+
    1 row in set (0.00 sec)mysql>