一、Excel找出某列重复值的三种方式
在 Excel 中找出某列重复值有以下三种方式:
- 使用条件格式:选中需要查找重复值的列,在“条件格式”中选择“突出显示单元格规则”,再点击“重复值”,根据需求选择相应的颜色,点击“确定”后,重复值就会被标记出来;
- 使用COUNTIF:在需要查找重复值的列旁边插入一列,输入公式=COUNTIF(范围, 单元格引用)>1,其中“范围”是要检查重复值的范围,“单元格引用”是当前单元格的引用。如果结果为 TRUE,则表示该单元格中的值是重复的,否则为非重复值;
- 使用数据透视表:选中需要查找重复值的列,点击“插入”菜单栏,选择“数据透视表”。在弹出的对话框中,确认数据区域无误,并选择放置数据透视表的位置。在数据透视表字段列表中,将需要统计的字段拖到“行”区域,并再次拖到“值”区域。在值区域的下拉菜单中,选择“计数”或“计数项”,即可查看每个值的重复次数。
- 使用VLOOKUP:选中需要查找重复值的列复制到新列进行删除重复项,再使用vlookup能V到的就是重复值。
二、SQL语法书写顺序和执行分别是什么?
在 SQL 中,语法的书写顺序通常如下:
SELECT [列名列表]
FROM [表名]
JOIN [关联表名] ON [关联条件]
WHERE [筛选条件]
GROUP BY [分组列名]
HAVING [分组后的筛选条件]
ORDER BY [排序列名] [排序方式]
然而,SQL 的执行顺序则有所不同,大致顺序如下:
FROM
:首先确定要从哪些表中获取数据,并进行表之间的连接操作。WHERE
:对连接后的结果根据指定的条件进行筛选,过滤出符合条件的数据。GROUP BY
:按照指定的列对数据进行分组。HAVING
:对分组后的结果进行筛选。SELECT
:选择要显示的列和进行计算。ORDER BY
:对结果按照指定的列和排序方式进行排序。
例如,如果有一张名为 students
的表,包含 id
、name
、age
和 grade
列,要找出年龄大于 18 岁且平均成绩大于 80 分的学生姓名和平均成绩,并按照平均成绩降序排列,可以这样写 SQL 语句:
SELECT name, AVG(grade) AS average_grade
FROM students
WHERE age > 18
GROUP BY name
HAVING AVG(grade) > 80
ORDER BY average_grade DESC;
在这个例子中,首先从 students
表获取数据,然后根据 WHERE
条件筛选出年龄大于 18 岁的记录,接着按照 name
进行分组,再通过 HAVING
筛选出平均成绩大于 80 分的分组,然后在 SELECT
中选择要显示的列和计算平均成绩,最后按照平均成绩降序排列结果。
三、SQL中两个表进行连接,一个部门表,一个职工薪资表,找每个部门中薪资最高的为多少?
以下是使用 SQL 解决此问题的示例代码: