Ahoj, měl by jeden hloupý dotaz a ale nepříjemně mě překvapil.
Mám zjednodušený sql příkaz tabulky prijemky, nicméně doklad je VARCHAR(50) a id int(9), vyhledávám podle ID(číslo příjemky) nebo dokladu. Nicméně pokud doklad začíná na číslo je nalezen záznam doklad '3CD...' ale také je převeden id na int a proto my vyhoví i id = 3 kde dělám chybu ? Respektive dá se databáze (MYSQL) donutit nepřekládat string na int ale na null či "" ?
SELECT `prijemky`.*
FROM `prijemky`
WHERE `prijemky`.`doklad` LIKE '3CD%' OR `prijemky`.`id` = '3CD'
mysql> SELECT `prijemky`.*
-> FROM `prijemky`
-> WHERE `prijemky`.`doklad` LIKE '3CD%' OR `prijemky`.`id` = '3CD' ;
+----+-----------+----------------+---------------+----------+---------------------+----------------+---------------------+------+
| id | doklad | dodavatel | datum_prijeti | poznamka | vlozeno | zamestnanec_id | upraveno | stav |
+----+-----------+----------------+---------------+----------+---------------------+----------------+---------------------+------+
| 3 | 214000915 | FIRMA | 2014-01-15 | | 2014-01-16 14:01:10 | 6 | 2014-01-20 11:34:48 | 1 |
+----+-----------+----------------+---------------+----------+---------------------+----------------+---------------------+------+
1 row in set, 1 warning (0.00 sec)