3

首先我很抱歉我的英语。

我有两个具有相同列的表,我想在 SELECT 中加入并按“nombre”排序。我的问题是它不像我预期的那样工作。例如:

表 1(ListaAmbos):

ID  nombre
1   Asaber
2   Zip


表 2(Listax86):

ID  nombre
24  rtywr
25  afaf
26  stftst'gdh
27  dgsdhttrh%%
28  Prueba


我想要的是:

ID  nombre
25  afaf
1   Asaber
27  dgsdhttrh%%
28  Prueba
24  rtywr
26  stftst'gdh
2   Zip


我得到什么:

ID  nombre
1   Asaber
28  Prueba
2   Zip
25  afaf
27  dgsdhttrh%%
24  rtywr<br>
26  stftst'gdh


我使用这个查询:

SELECT ID, nombre FROM ListaAmbos 
UNION ALL 
SELECT ID, nombre FROM Listax86 
ORDER BY nombre ASC;

但不要像我想要的那样工作......我做错了什么?

提前致谢。

4

2 回答 2

2

你得到的是首先是大写,然后是小写,这意味着你正在使用区分大小写的排序规则。将您的查询更改为:

...
ORDER BY nombre COLLATE NOCASE ASC

另请参阅:如何使用 SQL Order By 语句对结果进行不区分大小写的排序?

于 2013-09-06T17:11:38.443 回答
2

像这样尝试怎么样: -

 SELECT ID, nombre FROM ListaAmbos
 UNION ALL SELECT ID, nombre FROM Listax86 ORDER BY nombre COLLATE NOCASE ASC;
于 2013-09-06T17:12:07.667 回答