怎么在一堆身份证中筛选出大于18岁的?

最近一朋友找我帮个忙,让我在N多身份证中找到18岁以上的人。我还想着用SQL查询来弄,谁让是干IT的呢,没想到被我一个朋友用excel瞬间解决。。。。学习新的东西是多么的重要啊。

其实就是利用了excel中的MID函数。例子:MID(x,y,z);  MID函数可以截取表中的字符段,有三个参数,依次表示为获取哪一格数、从第几个字符开始、截取几位。例如MID(A1,7,4)表示截取A1格内从第7个开始长度为4的字符串。说道这里,上面的问题就迎刃而解。要算大于18岁的,肯定是获取身份证号码中的年份才行,用现在的年份减去获取到的年份,即为岁数。例如今年为2016年,则函数应为  =2016-MID(A1,7,4)。注意书写时候是英文。然后鼠标拖到单元格右下角往下拖拽,所有的岁数就出来了~右击,选择筛选,按照值刷选,选择大于等于18岁~大功告成!

是不是挺简单的。别看我说了这么多,只是为了详细。毕竟对于非经常使用excel的同学来讲,确实莫名其妙。

时间: 2024-08-04 22:22:45

怎么在一堆身份证中筛选出大于18岁的?的相关文章

[LeetCode] 在一堆字符串中找出包含相同字符的 group的较快方法,题 Anagrams

题目: Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will be in lower-case. class Solution { public: vector<string> anagrams(vector<string> &strs) { } }; 题意本身并不是很清晰,开始我的代码总是报Output Limit Exceeded,

JavaScript从内容中筛选出手机号码集合

var content='我的电话是:15267854101,妈妈的电话:13067854108,哥哥的电话:15267854108'; var isMobile = /(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}/g; var pNums = content.trim().match(isMobile); if(pNums==null||pNums=="") { alert("未识别任

mysql--单表中筛选出第二高的薪水

思路一:(最终的结果如果不存在第二高的薪水的话不会返回null)  无论是是使用哪种方法,最终在select后面都要跟一个distinct做到去重的效果 思路二:(解决不能返回null的问题) 方法一:使用子查询结合limit 方法二:使用IFNULL结合limit 补充: 1.对limit的基本使用规范 2.select 后面如果跟一个为空的结果集,最终输出的结果为null 原文地址:https://www.cnblogs.com/vegetableDD/p/11575104.html

算法之找出数组中出现次数大于n/m的元素

最经典的题目莫过于是: 在一个数组中找出出现次数超过n/2的元素?更进一步的,找出数组中出现次数大于n/3的所有元素? 注:这里有一个很重要的事实,那就是出现次数大于n/m的元素的个数至多为(m-1)个,比如出现次数大于n/3的至多只有两个. 关于这一类题目的解题思路,可以先讲一个游戏 称作 "俄罗斯方块".这里的规则是每一行的元素要完全不一样,一样的元素则总是在同一列,如果最下面的行已经被填满,那么消除最下面的行. 例如在数组 A = {7,3,3,7,4,3,4,7,3,4,3,4

代码中输入数字自动筛选出最大值,使用array,for loop and if (21.9.2017)

# include <stdio.h> # define N 20 main(){ int a, b; int array[N]={1,2,3,4,7,45,45,23,4,1,0,432,42,55,24,64,46}; //array中输入需要排序的数字 int max = array[0]; for(a = 1; a < N; a++){ if(array[a]>max){ max = array[a]; //使用max函数,快速筛选出最大值 } } printf("

找出一堆数中最小的前K个数

描写叙述: 给定一个整数数组.让你从该数组中找出最小的K个数 思路: 最简洁粗暴的方法就是将该数组进行排序,然后取最前面的K个数就可以. 可是,本题要求的仅仅是求出最小的k个数就可以,用排序能够但显然有点浪费.比方让求10000个整数数组中的最小的10个数.用排序的话平均时间复杂度差为Nlog(N). 于是想到了,用堆来实现,可是自己实现又太麻烦.想到了java里面的TreeSet,先将K个数放入TreeSet中.因为TreeSet会对里面的元素进行排序.所以在TreeSet中的元素是有序的.以

python_如何在列表、字典中筛选数据?

实际问题有哪些? 过滤掉列表[3,9,-1,10.-2......] 中负数 筛选出字典{'li_ming':90,'xiao_hong':60,'li_kang':95,'bei_men':98} 中值高于90的项 筛选出集合{3,9,-1,10.-2......]中能被3整除的数 问题1如何解决? 最普通方法: #!/usr/bin/python3 def filter_l(data): res = [] for i in data: if i > 0: res.append(i) retu

36辆车和6个赛道,筛选出最快的3辆车

问题描述:有36辆赛车和6条跑道,没有计时器的前提下,最少用几次比赛可以筛选出最快的3辆赛车? 情况1:不能标记 将36辆车分成6组,每组6辆车,每组分别进行比赛,留下每组的前3名.还有18辆车(6次) 将18辆车分成3组,每组6辆车,每组分别进行比赛,留下每组的前3名.还有9辆车(3次) 从9辆车中选择6辆进行一次比赛,留下前3名.留下的3辆车和没有参加比赛的3辆车,还有6辆车(1次) 最后6辆车比赛选出前3名(1次) 总共6+3+1+1=11次 情况2:可以标记 方法1(8次) 将36辆车分

centos中查找出大文件命令汇总

在linux中简单的查找文件与目录大小很简单 #已易读的格式显示指定目录或文件的大小,-s选项指定对于目录不详细显示每个子目录或文件的大小 du -sh [dirname|filename] 如: 当前目录的大小: 代码如下 复制代码 du -sh . 当前目录下个文件或目录的大小: 代码如下 复制代码 du -sh * 显示前10个占用空间最大的文件或目录: 代码如下 复制代码 du -s * | sort -nr | head * -h已易读的格式显示指定目录或文件的大小 * -s选项指定对