当前位置: 首页 > 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…...

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站&#xff0c;会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后&#xff0c;网站没有变化的情况。 不熟悉siteground主机的新手&#xff0c;遇到这个问题&#xff0c;就很抓狂&#xff0c;明明是哪都没操作错误&#x…...

智慧医疗能源事业线深度画像分析(上)

引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

JUC笔记(上)-复习 涉及死锁 volatile synchronized CAS 原子操作

一、上下文切换 即使单核CPU也可以进行多线程执行代码&#xff0c;CPU会给每个线程分配CPU时间片来实现这个机制。时间片非常短&#xff0c;所以CPU会不断地切换线程执行&#xff0c;从而让我们感觉多个线程是同时执行的。时间片一般是十几毫秒(ms)。通过时间片分配算法执行。…...

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

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

Redis数据倾斜问题解决

Redis 数据倾斜问题解析与解决方案 什么是 Redis 数据倾斜 Redis 数据倾斜指的是在 Redis 集群中&#xff0c;部分节点存储的数据量或访问量远高于其他节点&#xff0c;导致这些节点负载过高&#xff0c;影响整体性能。 数据倾斜的主要表现 部分节点内存使用率远高于其他节…...

Swagger和OpenApi的前世今生

Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章&#xff0c;二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑&#xff1a; &#x1f504; 一、起源与初创期&#xff1a;Swagger的诞生&#xff08;2010-2014&#xff09; 核心…...