У меня проблема с работой над хранимой процедурой и стимулсофт при использовании оператора Like
и оператора and
. Пожалуйста, помогите мне. Когда я использую этот код, он возвращает пустую страницу в стимуле, но если я изменяю одно из условий на or
, код возвращает все строки в таблице базы данных
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER PROCEDURE [dbo].[reportedu2]
@d1 NVARCHAR(50),
@d2 NVARCHAR(50),
@name NVARCHAR(50),
@unit NVARCHAR(50),
@semat NVARCHAR(50),
@maghta NVARCHAR(50),
@uni NVARCHAR(50),
@field NVARCHAR(50)
AS
BEGIN
SELECT *
FROM Tbledu
WHERE (unit LIKE '%' + ISNULL(@unit, unit) + '%')
AND (name LIKE '%' + ISNULL(@name, name) + '%')
AND (dateend BETWEEN @d1 AND @d2)
AND (semat LIKE '%' + ISNULL(@semat, semat) + '%')
AND (maghta LIKE '%' + ISNULL(@maghta, maghta) + '%')
AND (uni LIKE '%' + ISNULL(@uni, uni) + '%')
AND (field LIKE '%' + ISNULL(@field, field) + '%')
END