MySQL columns are of the text (or varchar) type and compared with numbers.

Source: Internet
Author: User

Today, I encountered a strange problem. One column in the MySQL table is of the text type, and the where condition in a row of query statements is:

Select * From tablename where columnname = 2;

The result is incorrect. We can find the result at in the record!

Double quotation marks (2) and the result is correct!

Puzzled! This is not found in the MySQL documentation. I found some comments on the Internet, as if MySQL encounters this column type and the given parameter value type does not match, it will convert the column in the MySQL record, that is to say, the value of a column is, converted to a number, and then converted to 2. Therefore, the conditions mentioned above will also find this record.

Reference: http://blog.chinaunix.net/uid-20690190-id-1894506.html

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.