SQL技巧:短小精悍的代码示例

需积分: 10 2 下载量 160 浏览量 更新于2024-09-13 收藏 370KB TXT 举报
"这篇文档汇集了SQL的经典短小代码示例,主要涵盖了数据转换、数据生成和日期格式化等功能。" 在SQL编程中,高效简洁的代码是关键。以下是一些从提供的内容中提取的关键知识点: 1. 行列转换: 当我们需要将具有多行数据的表格转换为宽格式时,可以使用`DECODE`函数配合`GROUP BY`来实现。例如,将学生的科目成绩转换为每行显示所有科目成绩的情况。在示例中,`DECODE`函数用于判断`subject`字段是否等于特定科目,如果是,则返回对应的`grade`,否则返回`NULL`。然后使用`SUM`函数对每个学生的所有科目成绩进行求和,得到每个学生各科的总分。 2. 数据生成: SQL Server 2005中的`CREATE TABLE`语句创建了一个临时表`#t`,并使用`IDENTITY(1,1)`作为主键生成唯一的ID。接着,`INSERT INTO`语句利用`CHECKSUM(NEWID())%100000`生成随机数,填充了10000条记录。`GO`关键字执行SQL批次。最后,`DROP TABLE #t`语句删除了这个临时表。这种技巧常用于快速生成测试数据。 3. 日期格式化: SQL提供了`CONVERT`函数来改变日期的显示格式。例如,`CONVERT(varchar, getdate(), 120)`会将当前日期时间转换为"年-月-日 时:分:秒"的格式。通过更换不同的转换样式(style),可以得到各种不同的日期格式,如去掉时间部分的日期(111、112)、带有不同分隔符的日期(101、102、103)等。这在生成报告或者格式化输出时非常有用。 这些SQL代码片段展示了SQL在处理数据转换、数据生成以及格式化输出方面的灵活性和实用性。掌握这些技巧,能帮助我们在日常数据库操作中更加高效地完成任务。