Mysql 使用CONCAT时phpMyAdmin错误的结果
我正在使用phpMyAdmin的版本Mysql 使用CONCAT时phpMyAdmin错误的结果,mysql,phpmyadmin,concat,Mysql,Phpmyadmin,Concat,我正在使用phpMyAdmin的版本4.1.13。请考虑以下表格和数据: CREATE TABLE `test` ( `testcol` mediumint(6) NOT NULL, PRIMARY KEY (`testcol`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8; INSERT INTO `test` (`testcol`) VALUES ('1'), ('2'), ('3'); 以下查询似乎返回了错误的结果: SELECT CONCAT(
4.1.13
。请考虑以下表格和数据:
CREATE TABLE `test` (
`testcol` mediumint(6) NOT NULL,
PRIMARY KEY (`testcol`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `test` (`testcol`) VALUES ('1'), ('2'), ('3');
以下查询似乎返回了错误的结果:
SELECT CONCAT(testcol), testcol FROM `test` WHERE 1;
CONCAT(testcol) testcol
--------------- -------
31 1
32 2
33 3
我是做错了什么还是这是一个PMA错误?直接在MySQL的命令行客户端中运行查询将返回预期结果
结果应该是:
CONCAT(testcol) testcol
--------------- -------
1 1
2 2
3 3
试试这个:
SELECT CONCAT(testcol), testcol FROM `test` WHERE testcol=1;
结果:
CONCAT(testcol) testcol
--------------- -------
31 1
显然,版本4.1需要MySQL版本5.5+你检查了我的答案了吗?CONCAT(testcol)仍然返回了错误的
31
@Dude你想强制转换到一个字符串吗?@H2Oooooo不,我只是想将类似“teststring”的字符串与每行的值连接起来从testcol=1的test中选择CONCAT(“teststring”,testcol)返回7465737472696E6731
这里的CONCAT函数是什么意思,通常与两个参数一起使用我尝试了你的代码。如你所料,它工作得很好。。我想可能是bcoz的版本问题。更新phpMyAdmin的版本,因为您的代码没有问题。@ktaria为了简单起见,我使用CONCAT和一个参数来比较MySQL的结果和PMA的结果。具有多个参数的CONCAT有相同的问题,返回垃圾。@LucasHenrique此版本,4.1.13是最新的稳定版本。