Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Выдача фамилий по частичному совпадению  [new]
IgorGalimski
Member

Откуда:
Сообщений: 43
Здравствуйте. Необходимо выдать несколько фамилий или одну по частичному совпадению. Делаю так:
CREATE PROCEDURE НеполноеСовпадение_17
@Фамилия varchar(10)
AS
	SELECT Фамилия_учащегося, Имя_учащегося, Отчество_учащегося
	FROM Учащиеся
	WHERE CHARINDEX(@Фамилия, Фамилия_учащегося) != 0 AND Фамилия_учащегося = 
	(
		SELECT Фамилия_учащегося
		FROM Учащиеся
		GROUP BY Фамилия_учащегося
	)
	GROUP BY Фамилия_учащегося, Имя_учащегося, Отчество_учащегося

Ошибка - Сообщение 512, уровень 16, состояние 1, процедура НеполноеСовпадение_17, строка 4
Вложенный запрос вернул больше одного значения. Это запрещено, когда вложенный запрос следует после =, !=, <, <=, >, >= или используется в качестве выражения.
23 май 16, 19:14    [19209229]     Ответить | Цитировать Сообщить модератору
 Re: Выдача фамилий по частичному совпадению  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Кто-то проспал лекцию про join'ы.
23 май 16, 19:17    [19209236]     Ответить | Цитировать Сообщить модератору
 Re: Выдача фамилий по частичному совпадению  [new]
правильный проходящий.
Guest
IgorGalimski,
и какое слово непонятно в сообщении об ошибке? В синтаксисе функции CHARINDEX допустимы параметры табличного типа?
23 май 16, 19:17    [19209237]     Ответить | Цитировать Сообщить модератору
 Re: Выдача фамилий по частичному совпадению  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 21243
Замените = на IN. Или перепишите на EXISTS.
23 май 16, 19:18    [19209239]     Ответить | Цитировать Сообщить модератору
 Re: Выдача фамилий по частичному совпадению  [new]
Гавриленко Сергей Алексеевич
Member

Откуда:
Сообщений: 37254
Да хотя, нет. Тут вообще какой-то бред абсурдный написан, зря я на join'ы гнал.

Сообщение было отредактировано: 23 май 16, 19:19
23 май 16, 19:19    [19209244]     Ответить | Цитировать Сообщить модератору
 Re: Выдача фамилий по частичному совпадению  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 21243
Гавриленко Сергей Алексеевич
Тут вообще какой-то бред абсурдный написан
Имхо это он так "упростил"...
23 май 16, 19:21    [19209255]     Ответить | Цитировать Сообщить модератору
 Re: Выдача фамилий по частичному совпадению  [new]
IgorGalimski
Member

Откуда:
Сообщений: 43
Спасибо. Простая замена на IN помогла
23 май 16, 19:30    [19209280]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить