0

我为我的手机联系人创建了一个表格,我想对手机号码进行排序。例如,如果电话号码以 1 到 3 开头,则属于第一家电信公司,而 4 到 6 则属于其他公司。

我想要做的是,如果用户输入他们的电话号码,该号码将被插入到电信公司的表中,但每个电信公司都依赖于ContactId,它是cellphoneContacts表中的主键。

我已经尝试过使用 cellnum1 但没有任何效果

cellnum1 ENUM('1%','2%','3%') ............. 
cellnum1 VARCHAR(11) CHECK (cellnum1 IN ('1%','2%','3%')) ......... 
cellnum1 VARCHAR(11) CHECK (cellnum1 LIKE('1%','2%','3%'))
4

2 回答 2

0
SELECT * FROM tbl_item WHERE SUBSTR([<Column name>], 1, X) = '<Your ID prefix>' ORDER BY [<Column name>]  

SUBSTR中的X是你想要多少个字符。请更具体地说明您将来想要什么。:)

于 2016-02-16T10:21:18.183 回答
0

MySQL 参考手册说:

CHECK 子句被解析,但被所有存储引擎忽略。

试试触发...

如果您正在检查第一个字符值,则可以substrNEW表格行上使用来过滤数据:

substr(NEW.cellnum1 ,1,1) in ( 1,2,3)
于 2016-02-16T10:27:23.687 回答