mysql - 获取只有 2 种类型号码的号码
问题描述
MySQL数据库:
+-----------+
| Number |
+-----------+
| 121255 |
+-----------+
| 22552525 |
+-----------+
| 122221221 |
+-----------+
| 555554 |
+-----------+
| 55445533 |
+-----------+
如何获取具有任意两个数字的数字?结果将是:
22552525 和 122221221 和 555554
解决方案
我假设该列只能包含数字。
应用两次replace()
以删除第一个字符,然后删除剩余字符串的第一个字符。
如果剩下的是一个空字符串,那么这个数字只包含 2 个不同的数字。
select * from tablename
where
length(replace(number, left(number, 1), '')) > 0
and
length(replace(
replace(number, left(number, 1), ''),
left(replace(number, left(number, 1), ''), 1),
''
)) = 0
请参阅演示。
结果:
| number |
| --------- |
| 22552525 |
| 122221221 |
| 555554 |
推荐阅读
- nlp - 确定 NER 任务的迁移学习策略
- php - 使用php mysql显示数据时缺少Datatable.js搜索栏
- sql - 获取当月最后一个日期时输入参数值
- react-native - Redux-persist 没有更新状态
- python-2.7 - 石头剪刀布模拟的异常结果
- r - 我怎样才能转换这个特定的坐标?
- python - 查找日期是否存在的函数,如果存在则打印数据框的该行
- javascript - 在 React 中按标题对数据进行排序
- ios - 删除/处理 UINavigationBar UIAppearence 以修复在 Swift iOS 中点击更多后 UIActivityViewController 共享屏幕标题透明的问题
- azure - ListBox.SelectedItems 用于多个变量