Câu trả lời cho ba câu hỏi đầu tiên của bạn là:có, có và không.
Khi chuỗi 'text'
được chuyển đổi thành một số, nó trở thành giá trị 0
.
Tài liệu mô tả chuyển đổi loại là tại đây .
Đối với truy vấn của bạn:
SELECT table.*
FROM table
WHERE id='text';
Quy tắc được nắm bắt bởi đoạn trích này từ tài liệu:
Trong tất cả các trường hợp khác, các đối số được so sánh dưới dạng số dấu phẩy động (thực).
Nói cách khác, điều này thực sự tương đương với:
WHERE id = 0.0