2017-11-27 1 views
0

das ist mein sql;Geben Sie die gleiche Nummer ein, das Ergebnis ist anders

CREATE TABLE `a20171118sign` (
    `id` int(11) NOT NULL, 
    `name` varchar(255) NOT NULL COMMENT '姓名', 
    `mobile` varchar(13) DEFAULT NULL COMMENT '手机', 
    `status` varchar(1) DEFAULT '0' COMMENT '状态,0为未签到,1为已签到', 
    `ip` varchar(15) DEFAULT NULL COMMENT 'IP地址', 
    `date` varchar(20) DEFAULT NULL COMMENT '签到时间' 
) ENGINE=InnoDB DEFAULT CHARSET=utf8; 

INSERT INTO `a20171118sign1` 
    (`id`, `name`, `mobile`, `status`, `ip`, `date`) 
VALUES 
    (1, 'test1', '18995181962', '0', NULL, NULL), 
    (2, 'test2', '18908178884', '0', NULL, NULL), 
    (3, 'test3', '‭13805716757‬', '0', NULL, NULL); 

SELECT LENGTH(mobile) FROM a20171118sign1; 

Ok, da ist etwas interessant. Die Ergebnisse sind folgende

11 
11 
17 

Was ist mit meinen Daten passiert? ps: Ich habe trim() verwendet, um zu testen, ob es Platz gibt, aber es ist nicht.

+0

Ihre Datenbanktabellen sind unterschiedlich. – Rafee

+0

a20171118zeichen * 1 * und a20171118zeichen –

+0

Sie können online sql Geige hier überprüfen http://sqlfiddle.com/#!9/017aaf/1 – Rafee

Antwort

Verwandte Themen