Я пытаюсь найти любую строку, содержащую ";" в столбце таблицы, которая приводит к странным результатам.
Это не только возвращает мне результаты, которые имеют ";" но также возвращает те строки, которые не содержат ";" но вместо этого содержит "'".
Вот мой запрос:
select *
from fields
where Comment like '%;%'
и возвращенные результаты
Строка 1 & 2 вместо 3 & 4 записей
Есть идеи?
Я добавляю следующую структуру таблицы и некоторые операторы вставки для справки. Хотя результат теперь будет отличаться
>/****** Object: Table [dbo].[Fields] Script Date: 08/10/2010 14:18:56 ******/
SET ANSI_NULLS ON
GO
>SET QUOTED_IDENTIFIER ON
GO
>SET ANSI_PADDING ON
GO
>CREATE TABLE [dbo].[Fields](
[ID] [int] IDENTITY(1,1) NOT FOR REPLICATION NOT NULL,
[Comment] [text] NULL,
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]
GO
>SET ANSI_PADDING OFF
GO
>INSERT INTO Fields (Comment) VALUES ('Moody''s Corp')
Go
>INSERT INTO Fields (Comment) VALUES ('0% as core business is ex-growth and hasn''t grown in a decade.')
Go
>INSERT INTO Fields (Comment) VALUES ('bphivgcofc ;')
Go
>INSERT INTO Fields (Comment) VALUES ('Newsflow - recommendations on use of paracetamol. Will probably takeoff EPS; in a worst-case but low probability scenario could be a 3% hit to earnings.')
Go
------- решено -----
Я думаю, что проблема в интерфейсе, который я использую для запроса к базе данных. Эта база данных размещена снаружи, поэтому поставщик предоставил нам интерфейс для доступа к этим данным, и, похоже, в этом интерфейсе есть проблема.
Спасибо всем за помощь и предложения.