2012-11-07 2 views
0

У меня возник вопрос о том, возможно ли это в выражении SQL для страницы ASPX.Как сделать SQL с условием IF в одном столбце

Предположим, что имеется три колонны, USER, Password и permission.

Если в моем SELECT заявлении я хочу выбрать только USER и PASSWORD только тогда, когда Permission является > 2, и если оно меньше, чем 2, я только хочу показать USER.

Возможно ли это? Или я должен сделать это в своем слое презентации?

+2

Вы не хранить пароли в виде обычного текста, не так ? –

+0

Да, это можно сделать с помощью ['case'] (http://msdn.microsoft.com/en-us/library/ms181765.aspx) – gdoron

+0

Для задания, так что я просто в текстовом поле. – user1807404

ответ

4

Basic SQL ..

select USER, CASE WHEN (Permission > 2) THEN PASSWORD ELSE null END 
from YOURTABLE 
+1

Это не отвечает на вопрос, уровень разрешений определяет, следует ли извлекать пароль. –

+0

Право ... fixed./ –

+0

+1, это правильно. – gdoron

1

Вы можете достичь этого, используя CASE заявление, в вашем (T-) SQL запрос

SELECT [user], CASE 
       WHEN Permission > 2 THEN [password] 
       ELSE '' 
       END 
FROM [table] 
+0

Ухм, он отвечает на вопрос ... –

+0

+1, теперь он отвечает на вопрос. – gdoron

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