当前位置: 首页 > 面试题库 >

如何选择具有不同排序规则的两列

慕容灿
2023-03-14
问题内容

我有一个SQL查询

SELECT Col1, Col2 FROM Table1
UNION ALL 
SELECT Col1, Col2 FROM Table2

其中col1col2是字符串并使用归类。

当我运行查询时,它显示错误:

  1. 无法解决语句中第1列的排序规则冲突。
  2. 无法解决语句中第2列的排序规则冲突。

任何人请帮忙。


问题答案:

该错误是否区分了两个表之间的区分大小写?这是我最常看到的错误。
如果是这样,则将有问题的表整理回旧的表Latin1_General_CI_AS或其他最合适的表。

例如,如果Table1区分大小写,并且您希望像区分大小写一样整理两个表:

SELECT Col1 COLLATE Latin1_General_CI_AS, 
       Col2 COLLATE Latin1_General_CI_AS FROM Table1
UNION ALL 
SELECT Col1, Col2 FROM Table2


 类似资料:
  • 问题内容: 在SQL中,将行复制到另一个(备份)表中。如果备份表具有不同的结构(或不同的列名称),这可能吗?如果没有,实现此目标的最佳方法是什么? 这是我想做的:具有columns 。我想将一些行从该表复制到另一个具有column的表。内容进入,对等 问题答案: 该 列名 不事可言,只要该 数据类型 相匹配。 如果列的数据类型不匹配,请尝试相应地强制转换值。 只需尝试 使用小的虚拟表。确保明确列出

  • exTab 如何使用SQL(与mySQL一起)只返回col1中具有多个相同值、col2中具有多个相同值、但COL3中具有唯一值的行? 例如,在上面的表(exTab)中,val1在col1中出现了4次,对于这4次,val4在col2中出现了3次,但是对于这3次,val7在col3中只出现了一次,所以我想返回这一行(第1行)。考虑到这些条件,第1行将是我希望从此表返回的唯一一行。 我试过和group

  • 问题内容: 该主题的解决方案使我不知所措。 我有一个看起来像的表格(除与我的问题无关的其他字段之外): 名称,卡号,会员类型 现在,我想要一个显示卡号和成员类型相同的行的视图。这两个字段都是整数。名称为VARCHAR。名称不是唯一的,并且相同的名称也应显示重复的卡号,会员类型。 即,如果下表是表格: 我想要: 只需按卡号排序即可使其对人类有用。 最有效的方法是什么? 问题答案: 由于您提到的名称可

  • 问题内容: 我有两个查询: 首先不起作用: 因为我得到错误: 第二部作品: 结构: 问题答案: 在两个表上使用。Hotels.TargetCode上的排序规则与on上的排序规则不同,因此DB不知道如何处理结果。 您可以强制其中一个排序规则与另一个排序规则匹配,或者将结果放入已定义排序规则的预定义临时表中。 编辑: 您可以使用类似…的方法来覆盖现有的排序规则。 …在查询中。这将使用带有collat​

  • 问题内容: 如何从表中选择所有内容,并且如果列的值相同,则仅选择具有最大值的行,因此,如果有这样的表: 它只会选择ID最高的“ bob”,因此结果将返回: 谢谢你。 问题答案: 您可以使用子查询来计算每个名称的最大ID,然后返回与该子查询返回的ID匹配的所有行: 请看这里的小提琴。

  • 问题内容: 假设我有一个数据框如下 现在,我希望a和b列不同的行。所以预期的输出是 我怎样才能做到这一点? 问题答案: 我喜欢可读性,请使用: 输出: