出于安全目的,我以这种方式进行了一些查询:
SELECT avatar_data FROM users WHERE MD5(ID) ='md5value'
Run Code Online (Sandbox Code Playgroud)
所以,例如我有这个条目:
-TABLE.users-
ID | avatar_data
39 | some-data
Run Code Online (Sandbox Code Playgroud)
我做这个查询:
SELECT avatar_data FROM users WHERE MD5(ID) ='d67d8ab4f4c10bf22aa353e27879133c'
Run Code Online (Sandbox Code Playgroud)
'd67d8ab4f4c10bf22aa353e27879133c'是'39'MD5 过滤后的值。
我有一个非常大的数据库,里面有很多条目。我想知道这种方法是否会影响数据库性能?
因为您在要搜索的列上使用函数( MD5(ID)= ),所以 MySQL 必须进行全表扫描。
虽然我不确定您进行此类搜索的原因,但为了加快速度,我建议您添加另一列包含已处理的 ID 数据并将其编入索引。
所以你应该这样做:
选择 * 从用户那里 MD5_ID = 'd67d8ab4f4c10bf22aa353e27879133c'
| 归档时间: |
|
| 查看次数: |
3052 次 |
| 最近记录: |