PDA

View Full Version : نحوه نوشتن if-else در select



salmah
جمعه 12 تیر 1394, 10:19 صبح
سلام
یه دستور select
select inumber ,ioutin from trequest

ioutin به صورت bit تعریف شده است
حالا می خوام یه ستون rvalueتعریف کنم و مقدار inumber را به این صورت بهدست بیارم :
اگر ioutin =1 بود که مقدارش *1واگر ioutin=0 بود مقدارش را * -1 کنه
SELECT inumber, ioutin, rvalue
if ioutin='1' rvaluer=1*inumber else rvalue=-1*inumber
FROM dbo.trequest

SabaSabouhi
شنبه 13 تیر 1394, 00:27 صبح
سلام
یه دستور select
select inumber ,ioutin from trequest

ioutin به صورت bit تعریف شده است
حالا می خوام یه ستون rvalueتعریف کنم و مقدار inumber را به این صورت بهدست بیارم :
اگر ioutin =1 بود که مقدارش *1واگر ioutin=0 بود مقدارش را * -1 کنه
SELECT inumber, ioutin, rvalue
if ioutin='1' rvaluer=1*inumber else rvalue=-1*inumber
FROM dbo.trequest

سلام
از case استفاده کن:


SELECT inumber, ioutin, rvalue = CASE WHEN ioutin = '1' THEN inumber ELSE -inumber END
FROM trequest


صبا صبوحی

salmah
شنبه 13 تیر 1394, 10:17 صبح
ممنون از راهنمایی اتون که همیشه مفید هست

اگر امکان داره راه تسلط در t-sqlرا بگید یا اگر منبع مفیدی هست به من معرفی کنید