返回顶部
首页 > 资讯 > 数据库 >SQL如何实现横表与纵表相互转换
  • 352
分享到

SQL如何实现横表与纵表相互转换

SQL横表与纵表转换SQL横表与纵表 2023-04-24 11:04:45 352人浏览 薄情痞子
摘要

目录一、横表简单概述二、纵表简单概述三、纵表转横表代码如下以及视图展示四、横表转纵表代码如下以及视图展示五、横表、纵表优点与缺点六、总结一、横表简单概述 横表是普通的建表方式。例如:表结构为主键、字段1、字段2、字段3&

一、横表简单概述

横表是普通的建表方式。例如:表结构为主键、字段1、字段2、字段3…。

二、纵表简单概述

纵表的表结构为主键、字段代码、字段值,字段代码则为字段1、字段2、字段3…。

三、纵表转横表代码如下以及视图展示

1.纵表视图如下:

SQL如何实现横表与纵表相互转换

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

SQL如何实现横表与纵表相互转换

3.sql语句如下所示:

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 ts
group by ts.student_name;

四、横表转纵表代码如下以及视图展示

1.横表视图如下:

SQL如何实现横表与纵表相互转换

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

SQL如何实现横表与纵表相互转换

3.sql语句如下所示:

select ts.studnet_name,
'C语言' as 科目,
ts.`C语言` as 成绩
from t_student1 ts
uNIOn all
select ts.studnet_name,
'数据结构' as 科目,
ts.`数据结构` as 成绩
from t_student1 ts
union all
select ts.studnet_name,
'操作系统' as 科目,
ts.`操作系统` as 成绩
from t_student1 ts
order by studnet_name,科目

五、横表、纵表优点与缺点

1.横表
优点:一行表示了一个实体记录,清晰可见。
缺点:如果现在要给这个表加一个字段,那么就必须重建表结构。

2.纵表
优点:如果现在要给这个表加一个字段,只需要添加一些记录。
缺点:数据描述不是很清晰,而且会造成数据库数据很多。另如果需要分组统计,要先group by,较繁琐

六、总结

应该把不容易改动表结构的设计成横表,把容易经常改动不确定的表结构设计成纵表。

到此这篇关于SQL如何实现横表与纵表相互转换的文章就介绍到这了,更多相关SQL 横表与纵表转换内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

您可能感兴趣的文档:

--结束END--

本文标题: SQL如何实现横表与纵表相互转换

本文链接: https://lsjlt.com/news/201838.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • SQL如何实现横表与纵表相互转换
    目录一、横表简单概述二、纵表简单概述三、纵表转横表代码如下以及视图展示四、横表转纵表代码如下以及视图展示五、横表、纵表优点与缺点六、总结一、横表简单概述 横表是普通的建表方式。例如:表结构为主键、字段1、字段2、字段3&...
    99+
    2023-04-24
    SQL 横表与纵表转换 SQL 横表与纵表
  • MySQL如何实现横纵表相互转化
    这篇文章主要讲解了MySQL如何实现横纵表相互转化,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。本文实例讲述了MySQL横纵表相互转化操作实现方法。分享给大家供大家参考,具体如...
    99+
    2024-04-02
  • MySQL横纵表相互转化操作实现方法
    本文实例讲述了MySQL横纵表相互转化操作实现方法。分享给大家供大家参考,具体如下: 先创建一个成绩表(纵表) create table user_score ( name varchar(20),...
    99+
    2022-05-24
    MySQL 横纵表 转化
  • Python - 列表与字典相互转换
    字符串转列表s = 'abc'a = list(s)['a','b','c']列表转为字符串''.join(a)字符串转换为元组s='abc't = tuple(s)元组转换为字符串''.join(t)列表转换为元组l = ['a','b'...
    99+
    2023-01-31
    字典 列表 Python
  • 如何用ADO.NET实现txt与Excel的互相转换
    本篇文章为大家展示了如何用ADO.NET实现txt与Excel的互相转换,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在园子里看过很多文章,关于设计模式,关于架构等等,我在这里谈谈一些软件的功能,为...
    99+
    2023-06-17
  • Java BeanMap如何实现Bean与Map的相互转换
    本篇内容主要讲解“Java BeanMap如何实现Bean与Map的相互转换”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java BeanMap如何实现Bean与Map的相...
    99+
    2023-07-04
  • 【PyTorch如何实现CPU、GPU相互转换?】
    拒绝CPU,PyTorch如何切换GPU计算? 问题的提出1.CPU_to_GPU——定义device对象2.CPU_to_GPU——.cuda()方法3.GPU_to_CPU——.cpuEn...
    99+
    2023-09-11
    pytorch 深度学习 python 人工智能
  • abap结构或内表怎么实现与json字符串相互转换.
    本篇内容介绍了“abap结构或内表怎么实现与json字符串相互转换.”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!可使用的类有很多,如cl_...
    99+
    2023-06-04
  • Canvas与Image怎么实现互相转换
    这篇文章将为大家详细讲解有关Canvas与Image怎么实现互相转换,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。转换 Image为 Canvas 要把图片...
    99+
    2024-04-02
  • JavaBeanMap实现Bean与Map的相互转换
    目录bean转Mapmap转BeanbeanMap实现以及高性能的原因net.sf.cglib.beans.BeanMap用法 bean转Map @Data public class...
    99+
    2022-11-21
    BeanMap Bean与Map的相互转换 BeanMap Bean与Map转换
  • ESM与CJS互相转换怎么实现
    本篇内容介绍了“ESM与CJS互相转换怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!正文ESM 和 CJS 是我们常用的模块格式,两...
    99+
    2023-07-05
  • 如何通过构造AJAX参数实现表单元素JSON相互转换
    这篇文章主要介绍如何通过构造AJAX参数实现表单元素JSON相互转换,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!ajax提交服务器数据, 整理一下转换方法。HTML:<for...
    99+
    2024-04-02
  • Python PyMuPDF如何实现PDF与图片和PPT相互转换
    这篇文章主要介绍了Python PyMuPDF如何实现PDF与图片和PPT相互转换的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python PyMuPDF如何实现PDF与图片和PPT相互转...
    99+
    2023-07-04
  • Android中String与int如何相互转换
    小编给大家分享一下Android中String与int如何相互转换,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、如何将字串 String 转换成整数 int方法一:int i = Inte...
    99+
    2023-06-22
  • Go如何实现json字符串与各类struct相互转换
    目录json字符串与各类struct相互转换简单总结结构体转换为JSON字符串的一个坑来看一下这个例子json字符串与各类struct相互转换 不废话了都在代码中了 packag...
    99+
    2024-04-02
  • Python实现周日历与时间相互转换
    目录前言基本介绍使用datetime类格式化进行转换问题正确方法使用isocalendar将日期转换为周日历使用 fromisocalendar 将周日历转换为日期python代码前...
    99+
    2024-04-02
  • python 实现docx与doc文件的互相转换
    因文件格式要求,需要将docx 与doc文件相互转换,特寻找python代码,与大家共分享 from win32com import client #转换doc为docx def...
    99+
    2024-04-02
  • C#实现子类与父类的相互转换
    目录子类与父类的相互转换例一例二子类父类之间相互转换的问题父类:动物类(Animal)子类:狗类(Dog)子类与父类的相互转换 1.父类不能直接强制转换成子类 2.子类可以强制转换成...
    99+
    2024-04-02
  • Java中string与int怎么实现互相转换
    本篇文章为大家展示了Java中string与int怎么实现互相转换,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。int -> String int i=12345;String s="...
    99+
    2023-05-31
    java string int
  • PythonPyMuPDF实现PDF与图片和PPT相互转换
    目录安装与简介MuPDFPyMuPDFPyMuPDF使用元数据页面Page代码示例PDF转图片图片转PDFPDF转PPT文章目录 安装与简介MuPDFPyMuPDF PyMuPDF使...
    99+
    2022-12-23
    Python PyMuPDF Python PDF转图片 Python PDF转PPT
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作