Does MySQL automatically casting\converting the string to numeric value?
How does that conversion works?
- '1234'=1234 ?
- '1abc' = 1 ?
- 'text' = 1 ?
Given that units.id
is of bigint type, how this query will be interpreted?
SELECT table.*
FROM table
WHERE id='text'
The answers to your first three questions are: yes, yes, and no.
When the string
'text'
is converted to a number, it becomes the value0
.The documentation that describes type conversion is here.
For your query:
The rule is captured by this excerpt from the documentation:
In other words, this is actually equivalent to: