在where

时间:2017-01-12 14:47:48

标签: mysql sql

我有一个超过1M条目的数据库,我需要在mysql中执行查询。 我有2个带有2个数字的冒号。一个是长期的企业号码,另一个是短期企业号码。两个数字都是相关的。 例如:一家公司的短号为112233445,长号为11223344566777。 我需要做的是选择短号与长号开头不同的所有行。你能救我吗?

1 个答案:

答案 0 :(得分:1)

使用LIKE

SELECT *
FROM yourTable
WHERE long_num NOT LIKE CONCAT(short_num, '%')

如果 想要将结果限制为没有14个字符的长数字,那么您可以为WHERE子句添加第二个条件:

SELECT *
FROM yourTable
WHERE long_num NOT LIKE CONCAT(short_num, '%') AND
      CHAR_LENGTH(long_num) <> 14
相关问题