Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

SQL SERVER - Разбиране как работи MIN(текст).

Определя се от колекция (ред на сортиране). За повечето култури редът на съпоставяне е същият като азбучния ред в английската азбука, така че:

  • „AA“ <„AB“
  • „AA“ <„AC“
  • „AB“ <„AC“

Следователно „AA“ е минималната стойност. За други култури това може да не е валидно. Например датско съпоставяне ще върне 'AB' като минимум, защото 'AA'> 'AB'. Това е така, защото „AA“ се третира като еквивалент на „Å“, което е последната буква в датската азбука.

SELECT MIN(s COLLATE Danish_Norwegian_CI_AS) FROM table1;

min_s
AB

За да получите "обикновен" ред за сортиране, използвайте Latin1_General_Bin съпоставяне:

SELECT MIN(s COLLATE Latin1_General_Bin) FROM table1;

min_s
AA

За да възпроизведете този резултат, можете да създадете тази тестова таблица:

CREATE TABLE table1 (s varchar(100));
INSERT INTO table1 (s) VALUES ('AA'), ('AB'), ('AC');


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Защо конструкторът на име/стойност на SqlParameter третира 0 като нула?

  2. Как да създадете композитен външен ключ в SQL Server (пример за T-SQL)

  3. Използване на SQL Server Profiler | Отстраняване на проблеми с производителността на SQL Server -5

  4. Как да добавите потребителска група на Active Directory като вход в SQL Server

  5. Архивиране на SQL Server 2017 -3