时间:2023-10-27来源:系统城装机大师作者:佚名
横表是普通的建表方式。例如:表结构为主键、字段1、字段2、字段3…。
纵表的表结构为主键、字段代码、字段值,字段代码则为字段1、字段2、字段3…。
1.纵表视图如下:

2.纵表转换成横表视图如下:

3.sql语句如下所示:
| 1 2 3 4 5 6 |
select student_name, sum(case ts.subject when 'C语言' then ts.score else '' end) as C语言, sum(case ts.subject when '数据结构' then ts.score else '' end) as 数据结构, sum(case ts.subject when '操作系统' then ts.score else '' end) as 操作系统from t_student tsgroup by ts.student_name; |
1.横表视图如下:

2.横表转换成纵表视图如下:

3.sql语句如下所示:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
select ts.studnet_name,'C语言' as 科目,ts.`C语言` as 成绩from t_student1 tsunion allselect ts.studnet_name,'数据结构' as 科目,ts.`数据结构` as 成绩from t_student1 tsunion allselect ts.studnet_name,'操作系统' as 科目,ts.`操作系统` as 成绩from t_student1 tsorder by studnet_name,科目 |
1.横表
优点:一行表示了一个实体记录,清晰可见。
缺点:如果现在要给这个表加一个字段,那么就必须重建表结构。
2.纵表
优点:如果现在要给这个表加一个字段,只需要添加一些记录。
缺点:数据描述不是很清晰,而且会造成数据库数据很多。另如果需要分组统计,要先group by,较繁琐
应该把不容易改动表结构的设计成横表,把容易经常改动不确定的表结构设计成纵表。
2023-10-27
windows11安装SQL server数据库报错等待数据库引擎恢复句柄失败解决办法2023-10-27
SQL Server截取字符串函数操作常见方法2023-10-27
浅谈SELECT *会导致查询效率低的原因收缩数据文件通过将数据页从文件末尾移动到更靠近文件开头的未占用的空间来恢复空间,在文件末尾创建足够的空间后,可取消对文件末尾的数据页的分配并将它们返回给文件系统,本文给大家介绍SQL Server 数据库中的收缩数据...
2023-10-27