SQL Server数据库查询常用语句汇总

news/2024/9/18 12:27:44/ 标签: 数据库, sqlserver

这里,汇总了在使用SQL Server数据库的过程中经常会写的查询语句。

情形1

根据时间查询最新一条数据
(dtime类型为datetime)

select top 1 '名称' as name,'列名1' as parname1,'列名2' as parname2,dtime,col1,col2 
from demo 
order by dtime desc;

情形2

根据时间查询指定属性最新时间的多条数(这里以2条为例)
DATE_TIME类型为datetime

SELECT ID_D,TAG_NAME,DATE_TIME,VAL1
FROM demo ee 
where 
TAG_NAME in ('属性1','属性2') and ID_D = 'xxx' and date_time = 
(select max(date_time) from demo rr where rr.ID_D=ee.ID_D)

或者下面这种写法也可以

SELECT top 2 ID_D,TAG_NAME,DATE_TIME,VAL1
FROM demo ee 
where 
TAG_NAME in ('属性1','属性2') and ID_D = 'xxx' 
order by date_time desc

情形3

指定sid,指定tid的条件下查找最新的多条数据
udtime类型为datetime

SELECT id,sid,tid,udtime,val
FROM demo ee
where sid in ('1001','1002','1004','1006','1007','1009','1089','1090') 
and udtime = (select max(udtime) from demo rr where rr.sid = ee.sid) and tid in (2,3)
order by sid,tid asc

情形4

查询24小时内的所有指定数据
DATE_TIME类型为datetime

SELECT DATE_TIME,val
FROM demo 
where TAG_NAME='属性名1' and DATEDIFF(hh, DATE_TIME, GETDATE())<=24
order by DATE_TIME desc

情形5

查询不重复的某属性个数

select count(DISTINCT(Name)) FROM demo 

函数说明:

GETDATE()函数

GETDATE()函数是SQL Server中的一个内置函数,它返回当前的日期和时间,包括年、月、日、小时、分钟、秒以及毫秒。这个函数在不需要特定格式或特定时区的时间时非常有用。
当你执行GETDATE()时,它将返回类似以下的值:2023-10-23 14:30:45.123,这个值表示当前的日期、时间,以及毫秒数。你可以通过执行SELECT GETDATE() AS CurrentDateTime;来获取当前的日期和时间,这将返回一行数据,其中包含一个名为CurrentDateTime的列,其值为当前的日期和时间。
如果你需要格式化这个日期或时间,你可以使用CONVERT或FORMAT函数结合GETDATE()。但请注意,FORMAT函数在某些SQL Server版本中可能不可用或性能不佳,所以通常建议使用CONVERT函数。例如,要将日期格式化为yyyy-MM-dd形式,你可以使用CONVERT函数和适当的样式代码来实现。

DATEDIFF() 函数

返回两个日期之间的时间。
语法:DATEDIFF(datepart,startdate,enddate)
startdate 和 enddate 参数是合法的日期表达式。
datepart 参数可以是下列的值:
在这里插入图片描述

CONVERT() 函数

作用:把日期转换为新数据类型的通用函数。
可以用不同的格式显示日期/时间数据。
语法:CONVERT(data_type(length),expression,style)

data_type(length) :规定目标数据类型(带有可选的长度)。
expression :规定需要转换的值。
style :规定日期/时间的输出格式。
在这里插入图片描述
上图来源于网络,也可对应下面中的例子快速查找

CONVERT(varchar(100), GETDATE(), 0):	11 21 2022  2:02PM
CONVERT(varchar(100), GETDATE(), 1):	11/21/22
CONVERT(varchar(100), GETDATE(), 2):	22.11.21
CONVERT(varchar(100), GETDATE(), 3):	21/11/22
CONVERT(varchar(100), GETDATE(), 4):	21.11.22
CONVERT(varchar(100), GETDATE(), 5):	21-11-22
CONVERT(varchar(100), GETDATE(), 6):	21 11 22
CONVERT(varchar(100), GETDATE(), 7):	11 21, 22
CONVERT(varchar(100), GETDATE(), 8):	14:02:02
CONVERT(varchar(100), GETDATE(), 9):	11 21 2022  2:02:02:727PM
CONVERT(varchar(100), GETDATE(), 10):	11-21-22
CONVERT(varchar(100), GETDATE(), 11):	22/11/21
CONVERT(varchar(100), GETDATE(), 12):	221121
CONVERT(varchar(100), GETDATE(), 13):	21 11 2022 14:02:02:727
CONVERT(varchar(100), GETDATE(), 14):	14:02:02:727
CONVERT(varchar(100), GETDATE(), 20):	2022-11-21 14:02:51
CONVERT(varchar(100), GETDATE(), 21):	2022-11-21 14:02:51.693
CONVERT(varchar(100), GETDATE(), 22):	11/21/22  2:02:51 PM
CONVERT(varchar(100), GETDATE(), 23):	2022-11-21
CONVERT(varchar(100), GETDATE(), 24):	14:02:51
CONVERT(varchar(100), GETDATE(), 25):	2022-11-21 14:02:51.693
CONVERT(varchar(100), GETDATE(), 100):	11 21 2022  2:03PM
CONVERT(varchar(100), GETDATE(), 101):	11/21/2022
CONVERT(varchar(100), GETDATE(), 102):	2022.11.21
CONVERT(varchar(100), GETDATE(), 103):	21/11/2022
CONVERT(varchar(100), GETDATE(), 104):	21.11.2022
CONVERT(varchar(100), GETDATE(), 105):	21-11-2022
CONVERT(varchar(100), GETDATE(), 106):	21 11 2022
CONVERT(varchar(100), GETDATE(), 107):	11 21, 2022
CONVERT(varchar(100), GETDATE(), 108):	14:03:41
CONVERT(varchar(100), GETDATE(), 109):	11 21 2022  2:03:41:837PM
CONVERT(varchar(100), GETDATE(), 110):	11-21-2022
CONVERT(varchar(100), GETDATE(), 111):	2022/11/21
CONVERT(varchar(100), GETDATE(), 112):	20221121
CONVERT(varchar(100), GETDATE(), 113):	21 11 2022 14:03:41:837
CONVERT(varchar(100), GETDATE(), 114):	14:03:41:837
CONVERT(varchar(100), GETDATE(), 120)2022-11-21 14:06:24
CONVERT(varchar(100), GETDATE(), 121)2022-11-21 14:06:24.583
CONVERT(varchar(100), GETDATE(), 126)2022-11-21T14:06:24.583
CONVERT(varchar(100), GETDATE(), 131)27/04/1444  2:06:24:583PM

请添加图片描述


http://www.ppmy.cn/news/1516215.html

相关文章

‌前端列表展示1000条大量数据时,后端通常需要进行一定的处理。‌

‌前端列表展示1000条数据时&#xff0c;后端通常需要进行一定的处理。‌ 在处理大量数据时&#xff0c;后端和前端需要协同工作&#xff0c;以确保数据的正确展示和性能优化。后端主要负责数据处理和逻辑运算&#xff0c;而前端则负责数据的展示和用户交互。对于大量数据的展…

CM工作室发展史 上

&#xff0c;注&#xff1a;本文章未使用"无标题技术" 目录 &#xff08;超长文章&#xff01;&#xff09; 新手时期 初来乍到 第一篇文章 第一个专栏——沙雕程序 学习"块引用" 第一次修改用户名 学习"代码" "头文件风波"时期 头…

SpringBoot工厂模式

前言 下面的示例展示了 SpringBoot 中如何使用工厂模式&#xff0c;该示例通过 ApplicationContext 直接获取 Spring 容器中所有 Animal 的 Bean&#xff0c;然后将它们存储在 animalMap 中&#xff0c;使用时直接从 Map 中获取实例。 另一种工厂模式可参考我另一篇文章 &…

实现Nginx四层负载均衡

Nginx在1.9.0版本开始支持tcp模式的负载均衡&#xff0c;在1.9.13版本开始支持udp协议的负载&#xff0c;udp主要用于 DNS的域名解析&#xff0c;其配置方式和指令和http 代理类似&#xff0c;其基于ngx_stream_proxy_module模块实现tcp 负载&#xff0c;另外基于模块ngx_strea…

零基础5分钟上手亚马逊云科技核心云架构知识-创建NoSQL数据库

简介&#xff1a; 欢迎来到小李哥全新亚马逊云科技AWS云计算知识学习系列&#xff0c;适用于任何无云计算或者亚马逊云科技技术背景的开发者&#xff0c;通过这篇文章大家零基础5分钟就能完全学会亚马逊云科技一个经典的服务开发架构方案。 我会每天介绍一个基于亚马逊云科技…

左手阿维塔右手深蓝,华为抢占高端及主流市场

在新能源汽车领域&#xff0c;一场由科技巨头引领的变革正在加速推进。 8月20日&#xff0c;阿维塔与华为正式签约并宣布入股引望智能技术有限公司&#xff0c;这一战略合作不仅标志着阿维塔在高端汽车市场的布局进一步深化&#xff0c;而且还预示着华为将与长安旗下的深蓝品牌…

[ICS] 物理安全

工业控制系统安全气泡类比 这个理念是&#xff0c;为了防御那些无法更新到最新安全控制措施的旧系统&#xff0c;或者由于设备资源有限而无法处理安全控制措施的系统&#xff0c;帮助可视化这种设备的安全策略可以将它们放置在一个肥皂泡或玻璃泡中。泡中的系统和设备彼此信任…

idea 项目启动慢,报内存溢出,调整jvm参数

idea 项目启动慢&#xff0c;直接报内存溢出了 java: java.lang.OutOfMemoryError: Java heap space 解决方案&#xff1a;调整 idea jvm参数 在IntelliJ IDEA中&#xff0c;可以通过以下步骤来全局设置Java堆大小&#xff1a; 打开IntelliJ IDEA。从菜单栏选择 “Help” &…

Transformer模型、强化学习、深度学习模型可解释性与可视化方法、注意力机制、目标检测算法、图神经网络、强化学习

近年来&#xff0c;伴随着以卷积神经网络&#xff08;CNN&#xff09;为代表的深度学习的快速发展&#xff0c;人工智能迈入了第三次发展浪潮&#xff0c;AI技术在各个领域中的应用越来越广泛。 抽丝剥茧、深入浅出讲解注意力机制、Transformer模型&#xff08;BERT、GPT-1/2/…

Servlet---Web会话跟踪 ▎token令牌

▍为什么要进行Web会话跟踪? http请求是无状态的,不携带用户信息的,当用户登录成功后,之后在于服务器交互时,服务器并不知道是哪个用户发送的请求 ▍Web会话跟踪 解决方法:在用户成功登录后,后端向前端响应token令牌(token令牌:用户信息),前端保存token令牌每次访问后端都先…

RabbitMQ如何保证消息不丢失

RabbitMQ消息丢失的三种情况 第一种&#xff1a;生产者弄丢了数据。生产者将数据发送到 RabbitMQ 的时候&#xff0c;可能数据就在半路给搞丢了&#xff0c;因为网络问题啥的&#xff0c;都有可能。 第二种&#xff1a;RabbitMQ 弄丢了数据。MQ还没有持久化自己挂了。 第三种…

C++类和对象(总篇)

文章目录 C类和对象1、类的定义1.1类定义格式1.2访问限定符1.3类域 2、实例化2.1实例化概念 3、this指针4、类的默认成员函数5、构造函数5.1构造函数的特点5.2实例分析 6、析构函数6.1析构函数的特点6.2实例分析 7、拷贝构造函数7.1 拷贝构造函数的特点7.2实例分析7.3浅拷贝和深…

【linux中高级命令】

杀进程 1、lsof列出所有打开的文件&#xff0c;‌包括网络连接&#xff0c;‌从而提供关于系统状态的宝贵信息‌ #可以直接查看端口的进程 lsof -i:端口获取到进程&#xff0c;使用kill命令和PID来终止进程 kill -9 [PID]2、列出使用该端口的进程信息&#xff0c;‌包括PID …

基于Python的mediapipe和opencv的人体骨骼、人体姿态关键点的实时跟踪项目

随着计算机视觉技术的发展&#xff0c;人体姿态估计在虚拟现实、运动分析、人机交互等领域得到了广泛应用。传统的姿态估计方法通常依赖于深度学习模型&#xff0c;需要大量的计算资源。而 Google 开发的 MediaPipe 框架则提供了高效且易于使用的解决方案&#xff0c;它可以在各…

如何解决git@github.com: Permission denied (publickey)异常

如何解决gitgithub.com: Permission denied异常 一、错误信息描述二、解决办法2.1、获取本地SSH Key2.2、将本地的SSH Key添加到github 一、错误信息描述 gitgithub.com: Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you …

LlamaIndex 实现 RAG(四)- RAG 跟踪监控

RAG 整个流程不复杂&#xff0c;集成三大部分包括文档解析并生成向量、根据查询问题查找语意相似的数据文档块、把查询问题和召回文档作为上下文的数据传给模型进行解答。大语言模型的应用开发和传统的开发方式区别很大&#xff0c;以前开发完成&#xff0c;只要逻辑正确&#…

linux系统使用 docker 来部署web环境 nginx+php7.4 并配置称 docker-compose-mysql.yml 文件

Docker是一个开源的容器化平台&#xff0c;旨在简化应用程序的创建、部署和管理。它基于OS-level虚拟化技术&#xff0c;通过将应用程序和其依赖项打包到一个称为容器的标准化单元中&#xff0c;使得应用程序可以在任何环境中快速、可靠地运行。 Docker的优势有以下几个方面&a…

乐鑫蓝牙Mesh协议栈ESP-BLE-MESH方案,设备智能连接通信的桥梁

随着科技的不断进步&#xff0c;智能家居已经不再是科幻小说中的梦想&#xff0c;而是触手可及的现实。在这场智能化革命中&#xff0c;蓝牙Mesh技术以其卓越的稳定性和扩展性&#xff0c;成为了连接家庭中每一个智能设备的桥梁。 它像一张隐形的网&#xff0c;将无数设备紧密…

C++基础语法:while的使用

前言 "打牢基础,万事不愁" .C的基础语法的学习."学以致用,边学边用",编程是实践性很强的技术,在运用中理解,总结. 引入 while的使用是编写代码的基础内容.笔者的记忆力已不如以前,最近遇到了还花了不少功夫,可见是掌握地不够牢固.所以对while的思路和内容…

爬取央视热榜并存储到MongoDB

1. 环境准备 在开始之前&#xff0c;确保你已经安装了以下Python库&#xff1a; pip install requests pymongo2. 爬取网页内容 首先&#xff0c;我们需要爬取央视热榜的网页内容。通过requests.get()方法&#xff0c;我们可以获取网页的HTML内容&#xff0c;并通过re.finda…