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

news2024/11/25 20:54:08

这里,汇总了在使用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.coloradmin.cn/o/2061275.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

算法基础及例题

1、双指针 维护区间信息、子序列匹配、利用序列有序性、单项链表找环双指针 - OI Wiki (oi-wiki.org) 盛最多水的容器https://leetcode.cn/problems/container-with-most-water/ public class Solution {public int maxArea(int[] height) {int l 0, r height.length - 1;int…

docker 导出导入镜像

这两天我在自己的虚拟机器上想docker pull tomcat 但是一直失败&#xff0c;那么我想到了一个思路就是在阿里云上的服务器上把镜像打包&#xff0c;然后倒导入的本地的虚拟机上。 查看当前的镜像&#xff1a; 我们现在想要打包哪个镜像呢&#xff0c;比如打包&#xff1a;tom…

线段树-点修区查

翻博客的时候突然发现线段树好像一个没有&#xff0c;我就准备把线段树给讲一下 分三个章节 点修区查 区修区查 区修区查&#xff08;带乘法&#xff09; 今天这一章比较简单&#xff0c;最多就区查稍微要动一点脑子 题目简介 输入n和m&#xff0c;n代表数的个数&#x…

python多进程multiprocessing(共享字典)

一&#xff0c;线程与进程的区别 纲领&#xff1a;进程是资源分配的最小单位&#xff0c;线程是CPU调度的最小单位 听老师傅说&#xff0c;在python上线程作用不大&#xff0c;最好还是使用多进程。 二&#xff0c;简单使用multiprocessing 检测一下电脑性能如何&#xff1a…

Mac电脑遇到DNS解析失败,ip可以访问,域名无法访问

当Mac电脑遇到DNS解析失败的问题时&#xff0c;可以尝试以下几个解决方法‌&#xff1a; 1.检查网络连接‌&#xff1a;确保Mac已连接到可用的网络&#xff0c;并且网络连接正常。可以尝试重新连接Wi-Fi或使用有线连接来排除网络问题。 2.清除DNS缓存‌&#xff1a;打开终端应…

技术革新,智能恢复:2024年AI驱动的数据恢复软件

数据的脆弱性不容忽视&#xff0c;误删、格式化、硬盘损坏等意外情况时有发生&#xff0c;让我们面临数据丢失的风险。幸运的是现在有不少数据恢复精灵应运而生。今天&#xff0c;就让我们一起探索2024年大家都在用的数据恢复精灵工具。 1.福昕数据恢复 链接直达&#xff1a;…

项目控件组(基于项)Item-Based-Qt-思维导图-学习笔记

项目控件组&#xff08;基于项&#xff09;Item-Based 控件组 &#xff08;1&#xff09;List Widget:清单控件 QListWidget 控件简介 继承关系&#xff1a;继承自 QListView 功能&#xff1a;提供一个基于项的列表小部件&#xff0c;允许添加和删除项目&#xff0c;使用内部…

springboot的启动流程原理

目录 一:入口简介: 二。创建SpringApplication对象 1.推倒出当前项目的启动类型 2.设置Initializer初始化器 3.初始化Listerner监听器 4.反推出main方法所在的class对象。 三.运行SpringApplication#run(java.lang.String...)方法 1):获取运行监听器: 2)发布启动过程中…

IPC进程通信以及网络通信

一、IPC 进程间通信方式 共享内存 //最高效的进程间通信方式 不需要把用户的东西再复制到内核 他们与内核进行绑定 共享内存&#xff1a; 1、是一块&#xff0c;内核预留的空间 2、最高效的通信方式 //避免了用户空间到内核空间的数据拷贝 IPC通信方式 ---操作流程类似的…

“决胜面试:高频题目与算法策略一览”

干货分享&#xff0c;感谢您的阅读&#xff01; &#xff08;暂存篇---后续会删除&#xff0c;完整版和持续更新见高频面试题基本总结回顾&#xff08;含笔试高频算法整理&#xff09;&#xff09; 备注&#xff1a;引用请标注出处&#xff0c;同时存在的问题请在相关博客留言…

wps题注为表格或图片编号

word中为表格添加题注&#xff1a; 问题&#xff1a;多次或多人编辑导致--序号不能联动更新&#xff08;域代码不一致,如图&#xff09; 所以是否可以批量替换word里的域代码&#xff1f;如果可以这问题就解决了————失败 解决办法&#xff1a; 如图&#xff0c;复制表头&…

[数据集][目标检测]工程机械车辆检测数据集VOC+YOLO格式3189张10类别

数据集格式&#xff1a;Pascal VOC格式YOLO格式(不包含分割路径的txt文件&#xff0c;仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数)&#xff1a;3189 标注数量(xml文件个数)&#xff1a;3189 标注数量(txt文件个数)&#xff1a;3189 标注…

万户 ezOFFICE receivefile_gd.jsp SQL注入漏洞复现

0x01 产品简介 万户OA ezoffice是万户网络协同办公产品多年来一直将主要精力致力于中高端市场的一款OA协同办公软件产品,统一的基础管理平台,实现用户数据统一管理、权限统一分配、身份统一认证。统一规划门户网站群和协同办公平台,将外网信息维护、客户服务、互动交流和日…

Thymeleaf+Bootstrap封装分页组件

效果 代码 templates/components/pagination.html <!doctype html> <html lang"zh-CN" xmlns:th"http://www.thymeleaf.org"> <body> <div class"d-flex justify-content-between align-items-center mb-3" th:fragment&…

Neo4j 图数据库入门

图形数据库存储节点和关系&#xff0c;而不是表或文档。数据的存储方式就像你在白板上勾画想法一样。您的数据存储不受预定义模型的限制&#xff0c;允许以非常灵活的方式考虑和使用它。 一、核心概念&#xff1a;属性图形模型 Neo4j使用属性图数据库模型。图数据结构由节点(离…

React错误:无法在‘node’上执行‘insertBefore‘:要在其前插入新节点的节点不是此节点的子节点

我在NextJS中用cloudinary实现了一个上传图片的页面&#xff0c;结果图片上传之后页面就无法点击操作&#xff0c;并在控制台报错&#xff1a; Failed to execute insertBefore on Node: The node before which the new node is to be inserted is not a child of this node. …

在 Arch Linux 上安装 Linux、Apache、MySQL、PHP(LAMP)堆栈的方法

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。 关于 LAMP LAMP 栈是一组用于启动和运行 Web 服务器的开源软件。该首字母缩略词代表 Linux、Apache、MySQL 和 PHP。Arch Linux 使用强…

【HTML】为网页添加列表和超链接

1、列表 1.1、无序列表 <ul><li>列表项1</li><li>列表项2</li><li>列表项3</li> ...... </ul>无序列表的常用type属性值 1.2、有序列表 <ol><li>列表项1</li><li>列表项2</li><li>列…

【乐吾乐大屏可视化组态编辑器】下载离线部署包

下载离线部署包/组件包 在线使用&#xff1a;https://v.le5le.com/ 导出为Zip文件 Zip包主要用于大屏可视化平台快捷导入导出项目。 如图下图所示&#xff0c;Zip包仅包含数据文件和图片文件&#xff0c;不包含js等依赖库。需要有一定开发能力者参考官方文档补充依赖库才能…

AndroidStudio最新版各个repositories下载失败

如下图&#xff0c;各个仓库都是下载失败&#xff0c;网络是有oversea的访问的&#xff0c;不行&#xff0c;我给AndroidStudio网络代理到oversea也不能下载&#xff0c;就很奇怪&#xff0c;就像是AndroidStudio强行把网络访问给墙了 原来Settings.Gradle的配置如下&#xff0…