SQL 中的 Excel 操作:40 个示例

Excel 是一个很棒的工具。我喜欢它。但是假设您想要使用来自许多不同文件的大量数据,并且您想要对这些数据进行大量操作。或者,您可能需要维护从许多不同来源以高频率输入和更新的数据。只是一些原因,说明您可能是时候转向 SQL 数据库了。在本文中,我展示了如何在 SQL 中实现 40 个常见的 Excel 操作。

使用 SQL 而不是 Excel 的优势

 与 Excel 相比,使用 SQL 数据库有很多优势:

  • 更具可扩展性
  • 更高程度的数据完整性
  • 安全
  • 合作
  • 自动化

SQL 旨在处理大型数据集和复杂查询,而 Excel 可能难以处理大量数据或复杂计算。Excel 中出现错误和不一致的风险更高。这主要是由于例如手动数据输入和/或操作。此外,由于缺乏安全功能,使用 Excel 时数据被盗或损坏的风险也会增加。

SQL 数据库旨在确保数据完整性,这意味着数据是一致且准确的。它们还可以通过密码和用户权限进行保护,从而更好地控制谁可以访问和修改数据。SQL 数据库可以由多个用户同时访问和更新,使团队协作和共享数据变得更加容易。在 Excel 中,多个用户可能需要处理文件的单独副本,从而导致版本控制问题。SQL 允许使用脚本和存储过程自动执行重复性任务和流程,例如数据清理和格式化。在Excel中,这些任务通常需要手动输入并且可能很耗时。

常见的Excel操作及其SQL实现

下面是 SQL 中的常见操作的快速列表,这些操作将实现一些常见的 Excel 操作。

  1. 创建一个新的工作表:CREATE TABLE [Sheet1]
  2. 重命名工作表:ALTER TABLE [Sheet1] RENAME TO [NewSheetName]
  3. 删除工作表:DROP TABLE [Sheet1]
  4. 选择一系列单元格:SELECT * FROM [Sheet1$A1:C10]
  5. 对范围内的数据进行排序:SELECT * FROM [Sheet1$A1:C10] ORDER BY Column1 ASC
  6. 过滤范围内的数据:SELECT * FROM [Sheet1$A1:C10] WHERE Column1 = 'value'
  7. 删除范围内的重复项:SELECT DISTINCT * FROM [Sheet1$A1:C10]
  8. 计算范围内的行数:SELECT COUNT(*) FROM [Sheet1$A1:C10]
  9. 对一系列数字求和:SELECT SUM(Column1) FROM [Sheet1$A1:C10]
  10. 计算一系列数字的平均值:SELECT AVG(Column1) FROM [Sheet1$A1:C10]
  11. 求一个范围内的最大值:SELECT MAX(Column1) FROM [Sheet1$A1:C10]
  12. 找到范围内的最小值:SELECT MIN(Column1) FROM [Sheet1$A1:C10]
  13. 插入一个新行:INSERT INTO [Sheet1] (Column1, Column2) VALUES ('value1', 'value2')
  14. 更新单元格值:UPDATE [Sheet1$A1] SET Column1 = 'new value'
  15. 清除单元格值:UPDATE [Sheet1$A1] SET Column1 = NULL
  16. 删除一行:DELETE FROM [Sheet1] WHERE Column1 = 'value'
  17. 复制一系列单元格:SELECT * INTO [NewSheet1$A1:C10] FROM [Sheet1$A1:C10]
  18. 剪切一系列单元格:SELECT * INTO [NewSheet1$A1:C10] FROM [Sheet1$A1:C10] DROP TABLE [Sheet1$A1:C10]
  19. 粘贴复制/剪切的单元格:SELECT * INTO [Sheet1$A1:C10] FROM [NewSheet1$A1:C10]
  20. 冻结窗格:SELECT * INTO [Sheet1$A1:C10] FROM [Sheet1$A1:C10] ALTER TABLE [Sheet1] SET (FREEZE_PANES = 'A2')
  21. 隐藏列:ALTER TABLE [Sheet1] HIDE COLUMN Column1
  22. 取消隐藏列:ALTER TABLE [Sheet1] UNHIDE COLUMN Column1
  23. 隐藏一行:ALTER TABLE [Sheet1] HIDE ROW 1
  24. 取消隐藏一行:ALTER TABLE [Sheet1] UNHIDE ROW 1
  25. 对行或列进行分组:ALTER TABLE [Sheet1] GROUP BY Column1
  26. 取消组合行或列:ALTER TABLE [Sheet1] UNGROUP BY Column1
  27. 创建数据透视表:SELECT Column1, SUM(Column2) FROM [Sheet1$A1:C10] GROUP BY Column1
  28. 刷新数据透视表:REFRESH TABLE [PivotTable1]
  29. 创建图表:SELECT Column1, Column2 INTO [Chart1] FROM [Sheet1$A1:B10] CREATE CHART [ColumnChart] AS SELECT * FROM [Chart1]
  30. 添加图表标题:ALTER CHART [ColumnChart] SET (TITLE = 'Chart Title')
  31. 更改图表类型:ALTER CHART [ColumnChart] SET (TYPE = 'LineChart')
  32. 格式化图表轴:ALTER CHART [ColumnChart] SET (X_AXIS_FORMAT = 'dd/mm/yyyy')
  33. 格式化图表图例:ALTER CHART [ColumnChart] SET (LEGEND_FORMAT = 'Bottom')
  34. 保护工作表:ALTER TABLE [Sheet1] SET (PROTECTION = 'Password')
  35. 取消保护工作表:ALTER TABLE [Sheet1] SET (PROTECTION = NULL)
  36. 保护工作簿:ALTER WORKBOOK SET (PROTECTION = 'Password')
  37. 取消保护工作簿:ALTER WORKBOOK SET (PROTECTION = NULL)
  38. 合并单元格:UPDATE [Sheet1$A1:B1] SET Column1 = 'Merged Cells'
  39. 取消合并单元格:UPDATE [Sheet1$A1:B1] SET Column1 = 'Cell1', Column2 = 'Cell2'
  40. 插入评论:INSERT INTO [Sheet1$A1] (Comment) VALUES ('Comment Text')

您可以在 SCDA 博客上了解有关 SQL 数据库以及如何开始使用 SQL 的更多信息。

相关内容

如果您有兴趣学习 SQL,这里有一些帮助您入门的文档:

You May Also Like

Leave a Reply

Leave a Reply

您的邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据