我想比较mysql中的字符串,但我所做的一切似乎都无法正常工作。
我有表USERS,登录/密码是varchars(128/255),里面有一条记录(见下文)
我想让用户登录是quak,密码是'd08 ...',所以我创建了一些查询:
SELECT d.* FROM USERS d WHERE d.password IN ('d08774a578812218da9f94480f914589e57ff1f358ccfed6009e1d9331d0b702');
- 无法正常工作
SELECT d.* FROM USERS d WHERE d.password = 'd08774a578812218da9f94480f914589e57ff1f358ccfed6009e1d9331d0b702';
- 无法正常工作
SELECT d.* FROM USERS d WHERE strcmp(d.password, 'd08774a578812218da9f94480f914589e57ff1f358ccfed6009e1d9331d0b702');
- 无效
SELECT d.* FROM USERS d WHERE d.login IN ('quak');
- 工作
SELECT d.* FROM USERS d WHERE d.login = 'quak';
- 工作
SELECT d.* FROM USERS d WHERE strcmp(d.login, 'quak') = 0;
- 工作(返回0 - 相同)
为什么查询1,2在查询4,5的位置不起作用?
为什么在查询6工作时查询3不起作用?
我的目标是让用户登录= ..和密码= ..
文本比较为utf8 general
答案 0 :(得分:0)
也许你有某种空间/特殊字符?
尝试:
.a li {
padding:16px;
}
.b li {
padding:6px;
}
答案 1 :(得分:0)
尝试
SELECT * FROM USERS d WHERE password like 'd08%';