SQL SERVER 2008多表关联查询,关联条件用(=*、*=、=)无法使用,高版本数据库不兼容,报错“*=”附近有语法错误!

news2024/11/16 0:28:59

专业问题,已经习惯了先问AI


下图是百度AI的回复


下图是讯飞星火的回复


 下面是SQL SERVER 2022数据库引擎,查询使用!

报错:“*=”附近有语法错误。

查询数据库版本语法
SELECT @@VERSION

得到数据库版本:SQL Server 2022 


 下面是SQL SERVER 2008(含)以前的数据库引擎,查询使用!可以正常,没有任何报错!


但几家国内AI都说这是错误的SQL语法,所以只能自己验证!然后总结.....

/*下面通过部门,新进员工的场景来模拟*/

--如下:创建员工临时表
CREATE TABLE #user
(UserID VARCHAR(50),
UserName NVARCHAR(50),
DeptID INT)

--如下:将数据插入员工临时表
INSERT INTO #user VALUES ('GCS001',N'骚团长','10')
INSERT INTO #user VALUES ('GCS002',N'张三','10')
INSERT INTO #user VALUES ('GCS003',N'李四','20')
INSERT INTO #user VALUES ('GCS004',N'王五','30')
INSERT INTO #user VALUES ('GCS004',N'赵六','40')
INSERT INTO #user VALUES ('GCS004',N'杨七','50')

--如下:创建部门临时表
CREATE TABLE #dept
(DeptID VARCHAR (50),
DeptName NVARCHAR(50))

--如下:将数据插入部门临时表
INSERT INTO #dept VALUES ('10',N'IT部')
INSERT INTO #dept VALUES ('20',N'生产部')
INSERT INTO #dept VALUES ('30',N'工程部')
INSERT INTO #dept VALUES ('60',N'人事部')
INSERT INTO #dept VALUES ('70',N'采购部')

/*下面是SQL SERVER 2008(含)以前的写法,在之后版本就不能使用了!*/
SELECT * FROM #user A,#dept B WHERE A.DeptID=B.DeptID--对应下面INNER JOIN
SELECT * FROM #user A,#dept B WHERE A.DeptID*=B.DeptID--对应下面LEFT JOIN
SELECT * FROM #user A,#dept B WHERE A.DeptID=*B.DeptID--对应下面RIGHT JOIN

/*下面这种写法所有版本通吃*/
SELECT * FROM #user A INNER JOIN #dept B ON A.DeptID=B.DeptID--即有员工,又分了部门(最常用)
SELECT * FROM #user A LEFT JOIN #dept B ON A.DeptID=B.DeptID --有员工,但没有分部门,可以增加WHERE B.DeptID IS NULL来过滤
SELECT * FROM #user A RIGHT JOIN #dept B ON A.DeptID=B.DeptID--有部门,但没有进员工,可以增加WHERE A.UserID IS NULL来过滤
SELECT * FROM #user A FULL JOIN #dept B ON A.DeptID=B.DeptID--其实就是上面LEFT JOIN和RIGHT JOIN 通过UNION查询出来的数据,即包括上面两种数据
SELECT * FROM #user A CROSS JOIN #dept B --所有的组合都组一次,哪个表放左边,就用哪个表的数据和右边的表组(可以#dept A CROSS JOIN #user)来看,就直观了!

/* 这个语句仅限用于临时表!这个语句仅限用于临时表!这个语句仅限用于临时表!重要的事情说3遍!严重性,可自行百度!
即便临时表不用这个删除也没关系,因为临时表是存在数据库当前连接的会话中,关闭页面(即断开会话)表会自动删除!
DROP TABLE #user
DROP TABLE #dept
*/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2041785.html

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

相关文章

[FSCTF 2023]细狗2.0

尝试输入cat /f* 输入;ls / 过滤了空格 输入 ;ls 看到2个php, 空格绕过可以用注释替换空格 ;ca\t/*123*/f* 发现不可以,看题解后发现使用${IFS}绕过 $IFS代替空格;$IFS、$IFS2、${IFS}、$IFS$9 Linux下有一个特殊的环境变量…

CSS3模拟windows加载效果

CSS3模拟windows加载效果https://www.bootstrapmb.com/item/15086 CSS3模拟Windows加载效果通常通过动画(animations)和变换(transforms)来实现。以下是一些实现这一效果的方法,这些方法主要利用了CSS3的动画和变换功…

【14】二叉树的Morris等

目录 一.树形dp套路 二.派对的最大快乐值 三.Morris遍历 morris先序遍历 morris中序遍历 moris后序遍历 判断是不是搜索二叉树 四.额外习题 一.树形dp套路 情况1:最大距离,节点X不参与。 > 左树最大距离 or 右树最大距离 情况2:最…

如何在 Spring Boot 的配置文件中使用环境变量?

1. 概述 在本教程中,我们将讨论如何在 Spring Boot 的application.properties和application.yml中使用环境变量。然后,我们将学习如何在代码中引用这些属性。 2. 在application.properties文件中使用环境变量 让我们定义一个名为JAVA_HOME的全局环境…

60行代码就可以训练/微调 Segment Anything 2 (SAM 2)

SAM2(Segment Anything 2)是Meta开发的一个新模型,可以对图像中的任何物体进行分割,而不局限于特定的类别或领域。这个模型的独特之处在于其训练数据的规模:1100万张图像和110亿个掩码。这种广泛的训练使SAM2成为训练新…

Linux内核分析(Linux中的进程)

文章目录 前言一、进程的概念1. 进程的概念2. 在内核中,进程叫做任务3. 进程的虚拟地址空间总结 二、进程的生命周期三、task_struct结构体分析三、进程的状态TASK_RUNNING (0)TASK_INTERRUPTIBLE (1)TASK_UNINTERRUPTIBLE (2)__TASK_STOPPED (4)__TASK_TRACED (8)E…

第十一章:特征选择与稀疏学习

1. 子集搜索与评价 “特征”:属性 “相关特征”:对当前学习任务有用的属性 “无关特征”:没什么用的属性,与当前的学习任务无关的属性 “特征选择”:从给定的特征集合中选择出相关特征子集的过程,(数据…

海外公司注册推广:10个值得尝试的创新战略

在全球化和数字化时代,海外公司注册已成为一种重要趋势。许多企业意识到,将业务扩展到国外市场可以带来巨大的商机和竞争优势。面对不同的国家法规和市场环境,注册一家海外公司并将其推广并非易事。本文将介绍10个值得尝试的创新战略&#xf…

【Android 笔记】记移植OpenCV4.8图像人脸识别

前言 因业务需要,使用大屏端摄像头捕获图像,且要识别图像中人脸的数目以及从中随机抽取一人。 业务流程如下,调用摄像头预览、拍照,使用OpenCV库进行人脸识别,将识别到的人脸使用矩形框绘制出来,从识别的人…

Matlab绘制像素风字母颜色及透明度随机变化动画

本文是使用 Matlab 绘制像素风字母颜色及透明度随机变化动画的教程 实现效果 实现代码 如果需要更改为其他字母组合,在下面代码的基础上简单修改就可以使用。 步骤:(1) 定义字母形状;(2) 给出字母组合顺序;(3) 重新运行程序&#…

15年以来 — 战略性云平台服务的演进路径之全面呈现(含亚马逊、微软和谷歌)

Gartner每年都发布对全球IaaS平台进行评估的魔力象限报告。2023年底,Gartner将此项评估的名称改为“战略性云平台服务”(Strategic cloud platform services),尽管其核心仍为IaaS,但是,毫无疑问&#xff0c…

【深度学习】什么是深度学习?

1. 前言 深度学习是机器学习的一个分支,它使用神经网络教计算机做人类自然而然会做的事情:从示例中学习。在深度学习中,模型会学习直接从图像、文本或声音等数据中执行分类或回归任务。深度学习模型可以达到最先进的准确率,通常超…

WPF自定义控件

控件模板 顾名思义就是在原有的控件上进行模版修改成自己需要的样式 把ProgressBar修改为一个水液面的进度条 <Window x:Class"XH.CustomLesson.MainWindow"xmlns"http://schemas.microsoft.com/winfx/2006/xaml/presentation"xmlns:x"http://s…

树莓派3B升级glibc-2.29

自从我树莓派的python升级到3.9&#xff0c;每次import numpy都会报错&#xff1a;libm.so.6: version GLIBC_2.29 not found。这又是怎么回事呢&#xff1f;查了资料才知道&#xff0c;原来是我的respbian系统版本低的原因&#xff08;如图&#xff09;。 &#xff08;可以用l…

Facebook广告投放优化思路分享,为何总是低量级

为什么谷歌优化总是不起效果&#xff1f;今天我来谈谈我的Facebook广告优化思路&#xff0c;希望对你有所帮助。感兴趣的可以点赞、收藏。关注我&#xff0c;每天分享海外推广知识。 以下是Facebook广告优化思路思维导图&#xff1a; 那么&#xff0c;今天主要来谈谈量级低的情…

哪个工具可以ai续写免费?多维度评测分享

在创意的征途中&#xff0c;你是否曾遇到过文思枯竭的困境&#xff1f;当灵感如同夜空中的流星&#xff0c;一闪而逝&#xff0c;如何捕捉并延续那份璀璨&#xff1f;答案或许就藏在ai续写软件的无限可能中。 不知道ai续写软件哪个好&#xff1f;别急&#xff0c;今天&#xff…

Win10 禁止更新-【延长更新时间】

文章目录 操作注册表 操作注册表 Win R regedit 打开注册表 粘贴&#xff1a; ** \HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 代开目录 新建32位数据值 &#xff1a;FlightSettingsMaxPauseDays 999 然后到更新界面&#xff0c;就可以一直点

数字信号处理3:数字滤波器设计

文章目录 前言一、实验目的二、实验设备三、实验内容四、实验原理五、实验方法及要求1.用脉冲响应不变法设计巴特沃斯数字滤波器2. 用双线性变换法设计切比雪夫数字滤波器3. 用双线性变换法设计巴特沃斯数字滤波器,并将直接型结构转换成级联型结构4. 数字低通滤波器特性比较5…

GD - EmbeddedBuilder_v1.4.1.23782工程中的gdc名称必须和工程名称一致

文章目录 GD - EmbeddedBuilder_v1.4.1.23782工程中的gdc名称必须和工程名称一致概述笔记总结END GD - EmbeddedBuilder_v1.4.1.23782工程中的gdc名称必须和工程名称一致 概述 在看EmbeddedBuilder_v1.4.1.23782自带的demo工程。 看到 D:\EmbeddedBuilder_v1.4.1.23782\exam…

工业一体机立式报工台助力工厂改善生产报工效率

在现代化工业生产中&#xff0c;生产效率和管理水平是企业竞争力的关键。为了实现高效的生产管理&#xff0c;工厂需要一个可靠、稳定、便捷的报工系统。传统的报工方式存在诸多弊端&#xff0c;例如效率低、易出错、数据难以统计分析等。而工厂软件报工台立式工业一体机的出现…