我正在使用sql语句的这一部分来删除cronjob.php文件中具有特定电话号码的帐户。我如何更改此语句以测试用户属性中特定给定字段的长度,而不是我在此处列出的值,即LIKE '%2147483648%'
$strSQL = "DELETE
FROM users,
profile_values
USING profile_values
INNER JOIN users USING(uid)
INNER JOIN profile_fields USING(fid)
WHERE profile_values.uid=users.uid
AND profile_values.value LIKE '%2147483648%'
AND (profile_fields.name = 'profile_phone_number')";
execSQL($strSQL);
最佳答案
如果要测试字段中数据的长度,则可以使用如下代码:
... WHERE LENGTH(TRIM(profile_values.value)) = 10 ...
替换正确的字段名称。 TRIM功能对于消除可能潜入数据中的任何前导或尾随空格很重要。
请小心使用此类功能来自动删除用户。这将是不加区别的。