Равенство SQL, показывающее неправильные результаты

У меня простая проблема с моей студией SQL. Я выбираю 2 поля:

  SELECT Project, OperationName
  FROM [LESTO].[UserData].[Orders]
  where project='SLS002701'

И следующий результат:

Равенство SQL, показывающее неправильные результаты

Очевидно, есть OperationName, которая называется ОПАКОВАНЕ/УПАКОВКА. Но когда я пытаюсь:

SELECT Project, OperationName
FROM [LESTO].[UserData].[Orders]
where OperationName = 'ОПАКОВАНЕ/PACKING'

Нет результата (0). Как это возможно?

Какой у вас тип данных столбца OperationName?

Zhorov 30.05.2019 08:22

Вы можете попробовать SELECT Project, OperationName FROM [LESTO].[UserData].[Orders] where OperationName LIKE 'ОПАКОВАНЕ/PACKING%' . Если он выбирает строки, которые вы ожидали, проверьте данные в столбце OperationName

Kiran Desai 30.05.2019 08:24

@zhorov nvarchar(99)

Borislav Stefanov 30.05.2019 08:25

Я пробовал также с LIKE и тот же результат @KiranDesai

Borislav Stefanov 30.05.2019 08:25

@BorislavStefanov where OperationName = N'ОПАКОВАНЕ/PACKING' будет работать.

Zhorov 30.05.2019 08:26

@Жоров Большое спасибо! Это сработало

Borislav Stefanov 30.05.2019 08:27

@BorislavStefanov вы ищете поле Unicode, используя строку ASCII. Введенная вами строка будет обрабатываться как ASCII с использованием любой кодовой страницы, соответствующей сопоставлению сервера. Используйте N'ОПАКОВАНЕ/PACKING' для создания литерала Unicode

Panagiotis Kanavos 30.05.2019 08:31
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
7
39
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Попробуйте с

SELECT Project, OperationName
FROM [LESTO].[UserData].[Orders]
where OperationName = N'ОПАКОВАНЕ/PACKING'

Для nvarchar вам требуется N', когда символы не Unicode.

Другие вопросы по теме