sql server 排序_sqlserver分组排序取最大一条

sql server 排序_sqlserver分组排序取最大一条问题:在项目数据库开发中,有时我们编写的脚本,在本机执行是没有问题的,但部署到服务器的时候,却在脚本运行时报错了。报错的中英文错误提示信息分别如下。中文:无法解决 equal to 运算中 &quot

sql server排序规则冲突问题解决

问题:
在项目数据库开发中,有时我们编写的脚本,在本机执行是没有问题的,但部署到服务器的时候,却在脚本运行时报错了。报错的中英文错误提示信息分别如下。
中文:无法解决 equal to 运算中 “SQL_Latin1_General_CP1_CI_AS” 和 “Chinese_PRC_CI_AS” 之间的排序规则冲突。
English:Cannot resolve the collation conflict between “SQL_Latin1_General_CP1_CI_AS” and “Chinese_PRC_CI_AS” in the equal to operation.

根源:
根据博主(微信公众号:SQL数据库编程,微信号:zhang502219048)实际工作中遇到的问题,概括为:如果本机是中文操作系统,而服务器是英文操作系统,而且脚本使用了临时表并且没有指定nvarchar或varchar文本字段的排序规则,并在join表连接中关联项目数据库的表(项目数据库默认排序规则为Chinese_PRC_CI_AS)的on关联条件中用到此文本字段,则会出现此问题。

解决方案:
方案1(不推荐)
在join连接的on条件字段中,对临时表指定排序规则。这种方法不推荐,因为如果有10个join临时表的语句,就得写10次,太过于繁琐。

select *
from #t1 a
inner join t2 b 
    on b.name = a.name collate Chinese_PRC_CI_AS

代码100分

方案2推荐
在临时表的nvarchar或varchar文本字段定义中,增加指定排序规则,一劳永逸,不需要再在join连接的on条件中指定排序规则。

代码100分create table #t1
(
    name nvarchar(50) collate Chinese_PRC_CI_AS
)

【转载请注明博文来源:https://www.cnblogs.com/zhang502219048/p/12992611.html】

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/8152.html

(0)
上一篇 2023-03-06 15:30
下一篇 2023-03-06 16:00

相关推荐

  • 四年的积分数据,反映了信息化的复杂「建议收藏」

    四年的积分数据,反映了信息化的复杂「建议收藏」下表数据,是历时四年,不定期记录下的本博积分与排名情况。 咋一看,是个挺简单的数据表,似乎依此可以轻松地搞出个增长曲线图之类的东东,再分析点什么结论出来。但再仔细研究一下,发现不那么回事,这里面还是挺

    2023-05-19
    144
  • 学习记录-py2neo:Neo4j数据库的python驱动

    学习记录-py2neo:Neo4j数据库的python驱动 安装: 直接在命令行pip3 install py2neo 官网下载(解压后放到python下的scripts中,在py2neo目录下cmd,输入python setup.py instal…

    2023-03-29
    156
  • mysql 3306端口_80和3306端口被占用

    mysql 3306端口_80和3306端口被占用今天安装MySQL,结果安装一半提示3306端口已被占用,于是网上搜索解决办法,成功解决了占用问题,于是将方法记录一下,以备后续再用。 1、Windows+R键,打开【运行】窗口,输入cmd打开“命令

    2023-02-24
    159
  • oracle order by 排序重复错乱问题

    oracle order by 排序重复错乱问题对于翻页等逻辑必须默认加上order by排序,而且order by的字段如果有重复值,必须指定第二排序字段,如果第二排序字段还有重复值,那必须指定更多的字段,直到所有的排序字段能够指定唯一顺序 ,…

    2023-03-31
    164
  • sql数据库mac版_数据库insert into

    sql数据库mac版_数据库insert intoSQLPro for MSSQL Mac版客户端是一个Mac平台上的轻量级的Microsoft SQL Server数据库的客户端,用于MSSQL的SQLPro Mac版允许快速和简单的访问MySQ…

    2023-02-23
    150
  • Anaconda Ubuntu 安装教程

    Anaconda Ubuntu 安装教程Anaconda是一个多语言数据科学平台,提供了一个简单易用、高效的方式进行数据科学工作流的管理。在使用Python进行数据科学工作的过程中,Anaconda是一个十分重要的工具。

    2024-07-30
    31
  • c语言重写python代码(python编译成c代码)

    c语言重写python代码(python编译成c代码)由于近几年人工智能的不断发展,Python也跟着火了,因为Python是深度学习技术的主流应用编程语言。同时它的应用场景很多,被称为“胶水语言”。优妹儿就帮小伙伴们科普一下,Python这门神奇编程语言的发展趋势,以及语言特性,帮助想要学习Python的小伙伴们,更清晰的了解它。

    2023-11-26
    137
  • oracle将时间戳转化为时间格式_oracle数据库时间格式

    oracle将时间戳转化为时间格式_oracle数据库时间格式通常我们在oracle中写日期格式化是这样的 to_date(时间,'yyyy-mm-dd') 但是,有时候也会遇到一些别样的需求,比如这样 : 让你按”xxxx年xx月xx日 …

    2023-03-07
    150

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注