翻翻過(guò)去那場(chǎng)雪
2018-09-05 15:11:38
有一個(gè)表,名字是main,表內(nèi)容如下:mysql>select*frommain;+------+----------+|ID|username|+------+----------+|0|user0||1|user1||2|user2|+------+----------+執(zhí)行命令返回:mys... 有一個(gè)表,名字是main,表內(nèi)容如下:mysql> select * from main;+------+----------+| ID | username |+------+----------+| 0 | user0 || 1 | user1 || 2 | user2 |+------+----------+執(zhí)行命令返回:mysql> select username from main where username='user0' || (select 1 from dual where (select username from main where username='user0')='user0');+----------+| username |+----------+| user0 || user1 || user2 |+----------+為什么會(huì)有這個(gè)結(jié)果?我從來(lái)沒有在我的語(yǔ)句里面涉及user1和user2,順便說(shuō)一下,單獨(dú)執(zhí)行執(zhí)行第二句select 1 from dual where (select username from main where username='user0')='user0'結(jié)果如下:+---+| 1 |+---+| 1 |+---+ 展開
1 回答

鴻蒙傳說(shuō)
TA貢獻(xiàn)1865條經(jīng)驗(yàn) 獲得超7個(gè)贊
mysql> select username from main where username='user0' || (select 1 from dual where (select username from main where username='user0')='user0');
+----------+
| username |
+----------+
| user0 |
| user1 |
| user2 |
+----------+
那個(gè)||是連接字符串,是Oracle 里面連接字符串的。
MySQL 里面, 連接字符串是用 CONCAT 函數(shù)來(lái)連接的。
如果你要連接字符串,那么
='user0' || (select 1 from ..... )
需要修改為=CONCAT('user0',(select1from.....))
添加回答
舉報(bào)
0/150
提交
取消