|
最佳回答 |
0
|
LarryAbbyLv5中级互助发布于2020-9-24 09:42(编辑于 2020-9-24 10:37)
|
刚才试了可以查呢 select * from 表1 where concat('fanruan\',username) = '${replace(fine_username,'\t','\\t')}
|
-
batfpd(提问者)
- 我这样写的不行 select * from t1 where cancat(\'fanruan\\\\\',username) = ${fine_username}
-
LarryAbby 回复 batfpd(提问者)
- 你直接用我发你的不行吗?你这样写的我没太看懂什么意思,${fine_username}应该是字符,要用单引号括起来的,前面还拼接了一段?
-
LarryAbby 回复 batfpd(提问者)
- select * from 表1 where concat(\'fanruan\\\',username) = \'${replace(fine_username,\'\\t\',\'\\\\t\')}
|
|
|
最佳回答 |
0
|
指间沙Lv6中级互助发布于2020-9-24 09:39(编辑于 2020-9-24 09:56)
|
|
-
batfpd(提问者)
- 客户要求用户定义结构为 \"公司名\\用户名\" 所以fine_username取的值例如 \"fanruan\\zhangsan\"
-
指间沙 回复 batfpd(提问者)
- 那你就查出来。。。sql里面查出来啊。。把公司查出来,把人员名字查出来,再拼接不就好了,。
|
|
|
最佳回答 |
0
|
shirokoLv6资深互助发布于2020-9-24 09:46
|
\t不想被转义就\\t不然就\\\t 试到可以为止233
|
-
batfpd(提问者)
- fine_username存的值是 \"公司名\\用户名\" 这是一个整体。里面没法加多加一个\\.
-
shiroko 回复 batfpd(提问者)
- 那你可能搞不回来了fine_username 里存的就已经是制表符了,而不是存了\\t。。你可以输出长度看看\\t那个位置是不是合起来只占了一个长度。。从底层改数据模式,重头再来吧,反斜杠换斜杠
|
|
|
最佳回答 |
0
|
krystal033Lv7高级互助发布于2020-9-24 09:54
|
|
|
|