2016-05-07 3 views
0
Create procedure [dbo].[proc_Search_Username](@username varchar(25)) 
as 
    begin 
    Declare @AccStatus int 
    Set @AccStatus = 15 

    while (@AccStatus = (select account_status from users where username like @username+'%')) 
     begin 
     select username from users where username like @username+'%' 
     end 
    end 

В выше хранимой процедуре я хочу, чтобы получить все данные пользователей .. чей username старт с "a" в то же время я хочу, чтобы проверить, что они account is active or inactive если счет inactive я не хочу для отображения информации ... Только active user информации.Как применять Хотя Loop условие в SQL Server

+1

Ваш подход простой не имеет смысла. Примеры данных и желаемые результаты помогут прояснить, что вы пытаетесь сделать. –

ответ

1

Попробуйте что-то вроде этого вместо ....

Create procedure [dbo].[proc_Search_Username](@username varchar(25)) 
as 
begin 
    Declare @AccStatus int 
    Set @AccStatus = 15; 

     select username from users 
     where username like @username+'%' 
     and account_status = @AccStatus 
end 

действительно не вижу причин, почему бы вам объявить переменную для @AccStatus внутри процедуры, а затем присвоить значение, а затем передать его в запросе, просто передайте значение запросу, если вы не планируете передавать эту переменную в процедуру. Затем сделайте это переменными процедуры.

+0

спасибо M.Ali его работа – Sri

+0

@Sri Я предлагаю вам пометить этот ответ как принятый, если он вам поможет. – gofr1

+0

Я не знаю, как отметить этот ответ, как принято – Sri

Смежные вопросы