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

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

《Playwright:微软的自动化测试工具详解》

Playwright 简介:声明内容来自网络&#xff0c;将内容拼接整理出来的文档 Playwright 是微软开发的自动化测试工具&#xff0c;支持 Chrome、Firefox、Safari 等主流浏览器&#xff0c;提供多语言 API&#xff08;Python、JavaScript、Java、.NET&#xff09;。它的特点包括&a…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

Robots.txt 文件

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

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

人机融合智能 | “人智交互”跨学科新领域

本文系统地提出基于“以人为中心AI(HCAI)”理念的人-人工智能交互(人智交互)这一跨学科新领域及框架,定义人智交互领域的理念、基本理论和关键问题、方法、开发流程和参与团队等,阐述提出人智交互新领域的意义。然后,提出人智交互研究的三种新范式取向以及它们的意义。最后,总结…...

Go语言多线程问题

打印零与奇偶数&#xff08;leetcode 1116&#xff09; 方法1&#xff1a;使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...

git: early EOF

macOS报错&#xff1a; Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...

vue3 daterange正则踩坑

<el-form-item label"空置时间" prop"vacantTime"> <el-date-picker v-model"form.vacantTime" type"daterange" start-placeholder"开始日期" end-placeholder"结束日期" clearable :editable"fal…...