之间有什么区别:

SELECT * FROM users WHERE username="davyjones"
SELECT * FROM users WHERE username LIKE "davyjones"

最佳答案

根据SQL标准,区别在于对CHAR列中尾随空白的处理。例:

create table t1 ( c10 char(10) );
insert into t1 values ('davyjones');

select * from t1 where c10 = 'davyjones';
-- yields 1 row

select * from t1 where c10 like 'davyjones';
-- yields 0 rows

当然,假设您在符合标准的DBMS上运行它。顺便说一句,这是CHAR和VARCHAR之间的主要区别之一。

09-25 20:15