当前位置: 首页 > news >正文

SQLserver中的增删改查和数据类型

SQLserver增删查改语句

SQL Server 是一种关系数据库管理系统,用于存储、管理和检索数据。以下是一些基本的 SQL 语句,用于在 SQL Server 中执行增删查改操作:

  1. 插入数据(Insert)

    • 插入完整行:

      INSERT INTO 表名 (列1, 列2, 列3, ...)
      VALUES (值1, 值2, 值3, ...);

    • 插入多行:

      INSERT INTO 表名 (列1, 列2, 列3, ...)
      VALUES 
      (值1a, 值2a, 值3a, ...),
      (值1b, 值2b, 值3b, ...),
      (值1c, 值2c, 值3c, ...);

  2. 查询数据(Select)

    • 选择所有列:

      SELECT * FROM 表名;

    • 选择特定列:

      SELECT 列1, 列2 FROM 表名;

    • 条件查询:

      SELECT * FROM 表名 WHERE 条件;

  3. 更新数据(Update)

    • 更新符合条件的行:

      UPDATE 表名
      SET 列1 = 值1, 列2 = 值2
      WHERE 条件;

  4. 删除数据(Delete)

    • 删除符合条件的行:

      DELETE FROM 表名 WHERE 条件;

  5. 创建表(Create Table)

    • 创建新表:

      CREATE TABLE 表名 (列1 数据类型,列2 数据类型,...
      );

  6. 修改表结构(Alter Table)

    • 添加新列:

      ALTER TABLE 表名
      ADD 新列名 数据类型;

    • 删除列:

      ALTER TABLE 表名
      DROP COLUMN 列名;

  7. 删除表(Drop Table)

    • 删除表:

      DROP TABLE 表名;

  8. 使用事务(Transaction)

    • 开始事务:

      BEGIN TRANSACTION;

    • 提交事务:

      COMMIT TRANSACTION;

    • 回滚事务:

      ROLLBACK TRANSACTION;       

SQLserver的数据类型

SQL Server 提供了多种数据类型,用于存储不同类型的数据。以下是一些常见的 SQL Server 数据类型:

  1. 数值数据类型

    • BIT:布尔值(0 或 1)。

    • TINYINT:8位无符号整数,范围从 0 到 255。

    • SMALLINT:16位整数,范围从 -32,768 到 32,767。

    • INT:32位整数,范围从 -2^31 到 2^31-1。

    • BIGINT:64位整数,范围从 -2^63 到 2^63-1。

    • DECIMALNUMERIC:固定精度和标度的数值数据类型。(128位)

    • FLOATREAL:浮点数。

    • SMALLMONEY:小货币值,范围从 -214,748.3648 到 214,748.3647。

    • MONEY:货币值,范围从 -922,337,203,685,477.5808 到 922,337,203,685,477.5807。

  2. 日期和时间数据类型

    • DATE:固定日期格式(YYYY-MM-DD)。

    • TIME:时间值,精度为 100 纳秒。

    • DATETIME:日期和时间值,精度为 3.33 微秒。

    • DATETIME2:日期和时间值,支持更高的精度。

    • DATETIMEOFFSET:日期和时间值,带有时区偏移量。

  3. 字符数据类型

    • CHAR:固定长度的非 Unicode 字符数据。

    • VARCHAR:可变长度的非 Unicode 字符数据。

    • TEXT:大量非 Unicode 字符数据。

    • NCHAR:固定长度的 Unicode 字符数据。

    • NVARCHAR:可变长度的 Unicode 字符数据。

    • NTEXT:大量 Unicode 字符数据。

  4. 二进制数据类型

    • BINARY:固定长度的二进制数据。

    • VARBINARY:可变长度的二进制数据。

    • IMAGE:大量二进制数据。

  5. 其他数据类型

    • CURSOR:存储游标。

    • HIERARCHYID:用于层次结构数据。

    • SQL_VARIANT:可存储多种类型的值。

    • UNIQUEIDENTIFIER:全局唯一标识符(GUID)。

    • XML:存储 XML 数据。

  6. 大型对象数据类型(LOB)

    • VARCHAR(MAX):最大长度为 2^31-1 字符的可变长度非 Unicode 字符数据。

    • NVARCHAR(MAX):最大长度为 2^31-1 字符的可变长度 Unicode 字符数据。

    • VARBINARY(MAX):最大长度为 2^31-1 字节的可变长度二进制数据。

    • TEXTNTEXTIMAGE 类型在 SQL Server 2005 之后被 VARCHAR(MAX)NVARCHAR(MAX)VARBINARY(MAX) 所取代,但仍然被支持。

  7. 空间数据类型

    • GEOGRAPHYGEOMETRY:用于存储空间数据。

  8. 表值参数

    • 允许将表作为参数传递给存储过程。

SQLserver中的多表联查

在 SQL Server 中,多表联查(也称为多表连接或 JOIN 操作)是一种将来自两个或多个表的数据组合在一起的操作。以下是 SQL Server 支持的几种主要的 JOIN 类型:

  1. 内连接(INNER JOIN)

    • 只返回两个表中连接条件相匹配的行。

    SELECT column1, column2
    FROM table1
    INNER JOIN table2
    ON table1.common_column = table2.common_column;

  2. 左外连接(LEFT OUTER JOIN)

    • 返回左表(table1)的所有行,以及右表(table2)中连接条件相匹配的行。如果右表中没有匹配的行,则结果为 NULL。

    SELECT column1, column2
    FROM table1
    LEFT OUTER JOIN table2
    ON table1.common_column = table2.common_column;

  3. 右外连接(RIGHT OUTER JOIN)

    • 返回右表(table2)的所有行,以及左表(table1)中连接条件相匹配的行。如果左表中没有匹配的行,则结果为 NULL。

    SELECT column1, column2
    FROM table1
    RIGHT OUTER JOIN table2
    ON table1.common_column = table2.common_column;

  4. 全外连接(FULL OUTER JOIN)

    • 返回左表和右表中所有的行。如果某一边没有匹配的行,则该边的结果为 NULL。注意:SQL Server 也直接支持 FULL OUTER JOIN,也可以通过结合 LEFT OUTER JOIN 和 RIGHT OUTER JOIN 实现。

    SELECT table1.column1, table2.column2
    FROM table1
    LEFT OUTER JOIN table2
    ON table1.common_column = table2.common_column
    UNION ALL
    SELECT table2.column2, table1.column1
    FROM table1
    RIGHT OUTER JOIN table2
    ON table1.common_column = table2.common_column;

  5. 交叉连接(CROSS JOIN)

    • 返回两个表的笛卡尔积,即每个表中的每一行与另一个表中的每一行组合。

    SELECT column1, column2
    FROM table1
    CROSS JOIN table2;

  6. 自连接(SELF JOIN)

    • 表与其自身进行连接。通常用于查询表中的相关数据。

    SELECT a.column1, b.column2
    FROM table1 AS a
    INNER JOIN table1 AS b
    ON a.common_column = b.another_common_column;

  7. 使用 APPLY 运算符

    • 用于将表值函数或子查询的结果与外部表进行连接。

    SELECT a.column1, b.*
    FROM table1 AS a
    OUTER APPLY (SELECT * FROM table2 WHERE condition) AS b;

  8. 使用 JOIN ... WITH (index hint)

    • 在 JOIN 操作中指定索引提示,以优化查询性能。

    SELECT column1, column2
    FROM table1
    INNER JOIN table2 WITH (INDEX (index_name))
    ON table1.common_column = table2.common_column;

相关文章:

SQLserver中的增删改查和数据类型

SQLserver增删查改语句 SQL Server 是一种关系数据库管理系统,用于存储、管理和检索数据。以下是一些基本的 SQL 语句,用于在 SQL Server 中执行增删查改操作: 插入数据(Insert) 插入完整行: INSERT INTO …...

个人收藏个性化、实用性、可玩性在线网站持续更新,与君共享

1.https://handraw.top/ 支持中文手绘效果的白板工具,比较怀旧复古风格 界面简单风 2.https://app.diagrams.net 流程图、UML图、网络图、组织结构图、思维导图等,比较专业 可导出图片 PDF HTLM等各种格式 3.https://www.processon.com 主要用于生成…...

win10蓝牙只能发送,无法接收

给win10升了级,到22H2,蓝牙出了问题 以前接收,就是默认直接就可以接收。现在只能发送,无法接收。 在网上找了很多办法都没奏效,目前的方法是, 每次接收,都要操作一次,而不是自动接…...

【论文阅读03】用于海洋物体检测的多注意力路径聚合网络

来源:用于海洋物体检测的多注意力路径聚合网络 |应用智能 (springer.com) 一、背景: 水下图像存在偏色、对比度低、能见度低等问题,使得海洋物体难以被探测到。这些都增加了海上目标探测的难度。 目前流行的检测器方法是基于卷积神经网络&…...

Linux 进程(2)

进程的回收 1.wait 原型 pid_t wait(int *status); 功能:该函数可以阻塞等待任意子进程退出 并回收该进程的状态。 一般用于父进程回收子进程状态。 参数:status 进程退出时候的状态 如果不关心其退出状态一般用NULL表示 如果要回收进程…...

[CSCCTF 2019 Qual]FlaskLight1

打开题目 右键查看一下源代码 看到提示,需要用GET方search函数...

layui table表单 checkbox选中一个其它也要选中

当我们选中其中一个商品的时候同类型的商品状态也要跟着改变 所以要在表单加载完成后去监听checkbox ,done:function (res) {console.log(详情表格数据,res)tableDetailList res.data;// 监听表格复选框选择table.on(checkbox( INST_SELECTORS.instLayFilters.unpaidTableDe…...

【pip镜像设置】pip使用清华镜像源安装

文章目录 问题:问题描述原因分析:PyPI(Python Package Index) PypI 镜像列表解决方案: 问题: 大家经常会使用 pip 进行python 的第三方库安装,但是,有时会出现 ERROR: Could not f…...

c++ 智能指针--std::shared_ptr

在C中,std::shared_ptr是智能指针的一种,它用于自动管理具有动态生命周期的对象。当std::shared_ptr的实例被销毁或重置时,它所指向的对象(如果仍然存在)将被自动删除(调用delete),前…...

网络工程师学习笔记(二)

计算机网络概述——二 通信子网中转发节点的互联模式叫做子网的拓扑结构 常见的拓扑结构: 总线型(一条总干线上连接着多个终端) 特点:损坏一个节点会造成单点故障 星型(中间一台服务器或者一各小型工作站周围都是计算机) 特点…...

90.WEB渗透测试-信息收集-Google语法(4)

免责声明:内容仅供学习参考,请合法利用知识,禁止进行违法犯罪活动! 内容参考于: 易锦网校会员专享课 上一个内容:89.WEB渗透测试-信息收集-Google语法(3) • inurl • 搜索特殊 UR…...

阿里Qwen2开源大模型本地部署及调试全攻略

阿里Qwen2开源大模型本地部署及调试全攻略 #Qwen2系列大模型性能卓越,超越业界知名模型。开源后受到AI开发者关注,支持多种语言,提升多语言理解。在预训练和微调上优化,实现智能水平提升。Qwen2系列模型在各项能力上均领先&#…...

『功能项目』移动后的光标显示【04】

我们打开上一篇03的射线双击项目, 本章要做的事情是在PlayerRayNavgation脚本中添加一个移动光标,实现人物在场景中鼠标点击移动后在移动过程中出现移动目标光标的效果。 在unity编辑器中创建一个Plane 重命名为MovementSign 删掉碰撞器 创建一个材质 选…...

HTML 基本语法特性与 title 标签介绍

目录 title标签 HTML 的基本语法特性 对换行和缩进不敏感 空白折叠现象 标签要严格封闭 title标签 在 HTML 中&#xff0c;<title>标签起着至关重要的作用&#xff0c;它主要用于定义文档的标题。通常情况下&#xff0c;<title>标签被放置在<head>标签内…...

CSS的:placeholder-shown伪类:精确控制输入框占位符样式

CSS&#xff08;层叠样式表&#xff09;是控制网页元素样式的强大工具。随着Web开发技术的进步&#xff0c;CSS不断引入新的选择器和伪类&#xff0c;以增强开发者对页面元素的控制能力。:placeholder-shown伪类是CSS中一个相对较新的特性&#xff0c;它允许开发者针对输入字段…...

Java之HashMap的底层实现

Java之HashMap的底层实现 摘要HashMap的底层原理哈希值转换为数组下标节点初始化put(Object key, Object value)重写toString()get(Object key)增加泛化remove(K key) 摘要 本博客主要讲述了Java的HashMap的底层实现 HashMap的底层原理 底层原理&#xff1a;数组链表 过程…...

多张图片进行模型重建并转换为OBJ模型

前提条件&#xff1a; 需要安装OpenCV库和Eigen库&#xff08;用于矩阵运算&#xff09;。你需要对计算机视觉和3D建模有一定了解。 步骤概述&#xff1a; 使用OpenCV进行图像处理和特征提取。使用OpenCV进行相机标定和图像对齐。使用重建算法&#xff08;如SIFT、SURF&#xf…...

信息安全保证人员CISAW:安全集成

信息安全保障人员认证(CISAW)在安全集成领域的认证&#xff0c;主要针对申请者在信息系统安全集成的知识和理论以及项目实施中的综合应用能力进行全面评估。 这一认证特别强调对申请者在安全集成方面的知识深度和利用这些知识分析、解决实际问题的能力的评价。 此外&#xff…...

别再无效清理微信内存啦,这才是正确清理内存的方式

微信作为我们日常生活中必不可少的社交工具&#xff0c;随着时间的积累&#xff0c;往往会占据手机大量宝贵的存储空间。 如何在保证重要信息不丢失的同时&#xff0c;有效地管理和清理微信中的垃圾文件和无用数据&#xff0c;成为了一个值得探讨的话题。 本文将从几个方面介…...

ant design 的 tree 如何作为角色中的权限选择之一

这种功能如何弄呢&#xff1f; 编辑的时候要让权限能选中哦。 <ProForm.Item name"permissions" label{intl.formatMessage({ id: permission_choose })}><Spin spinning{loading}><TreecheckableonExpand{onExpand}expandedKeys{expandedKeys}auto…...

19c补丁后oracle属主变化,导致不能识别磁盘组

补丁后服务器重启&#xff0c;数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后&#xff0c;存在与用户组权限相关的问题。具体表现为&#xff0c;Oracle 实例的运行用户&#xff08;oracle&#xff09;和集…...

idea大量爆红问题解决

问题描述 在学习和工作中&#xff0c;idea是程序员不可缺少的一个工具&#xff0c;但是突然在有些时候就会出现大量爆红的问题&#xff0c;发现无法跳转&#xff0c;无论是关机重启或者是替换root都无法解决 就是如上所展示的问题&#xff0c;但是程序依然可以启动。 问题解决…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

【JavaSE】绘图与事件入门学习笔记

-Java绘图坐标体系 坐标体系-介绍 坐标原点位于左上角&#xff0c;以像素为单位。 在Java坐标系中,第一个是x坐标,表示当前位置为水平方向&#xff0c;距离坐标原点x个像素;第二个是y坐标&#xff0c;表示当前位置为垂直方向&#xff0c;距离坐标原点y个像素。 坐标体系-像素 …...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

Linux --进程控制

本文从以下五个方面来初步认识进程控制&#xff1a; 目录 进程创建 进程终止 进程等待 进程替换 模拟实现一个微型shell 进程创建 在Linux系统中我们可以在一个进程使用系统调用fork()来创建子进程&#xff0c;创建出来的进程就是子进程&#xff0c;原来的进程为父进程。…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

OCR MLLM Evaluation

为什么需要评测体系&#xff1f;——背景与矛盾 ​​ 能干的事&#xff1a;​​ 看清楚发票、身份证上的字&#xff08;准确率>90%&#xff09;&#xff0c;速度飞快&#xff08;眨眼间完成&#xff09;。​​干不了的事&#xff1a;​​ 碰到复杂表格&#xff08;合并单元…...

flow_controllers

关键点&#xff1a; 流控制器类型&#xff1a; 同步&#xff08;Sync&#xff09;&#xff1a;发布操作会阻塞&#xff0c;直到数据被确认发送。异步&#xff08;Async&#xff09;&#xff1a;发布操作非阻塞&#xff0c;数据发送由后台线程处理。纯同步&#xff08;PureSync…...

游戏开发中常见的战斗数值英文缩写对照表

游戏开发中常见的战斗数值英文缩写对照表 基础属性&#xff08;Basic Attributes&#xff09; 缩写英文全称中文释义常见使用场景HPHit Points / Health Points生命值角色生存状态MPMana Points / Magic Points魔法值技能释放资源SPStamina Points体力值动作消耗资源APAction…...