PDA

View Full Version : تغییر در مقدار فیلد های view



محسن بابائی
دوشنبه 23 مرداد 1385, 05:54 صبح
سلام
توی view چگونه مقدار فیلیدی را می شه تغییر داد. مثلا فید type را جاهایی که برابر 1 است مقدارش برابر "سیب" شود .

majid_afra222
دوشنبه 23 مرداد 1385, 07:56 صبح
سلام
همیشه و همه جا CASE


SELECT
CAST type
WHEN 1 THEN N'سیب'
WHNE 2 THEN N'گلابی'
ELSE N'هیچ کدام'
WND type_name
FROM tbl


اینکه تا بحال چندین بار مطرح شده

حمیدرضاصادقیان
دوشنبه 23 مرداد 1385, 08:15 صبح
دوست عزیز راه بالا هم درسته ولی من پیشنهادم اینه که از همون دستور update استفاده کنی بهتره.فکر کنم خیلی سریعتر باشه.میتونی در QA تست کنی.


Update view1
set type='سیب'
where type=1

محسن بابائی
چهارشنبه 25 مرداد 1385, 05:09 صبح
از اینکه جواب دادین ممنون.
ولی هنوز تست نکردم.

محسن بابائی
چهارشنبه 25 مرداد 1385, 09:20 صبح
سلام
همیشه و همه جا CASE


SELECT
CAST type
WHEN 1 THEN N'سیب'
WHNE 2 THEN N'گلابی'
ELSE N'هیچ کدام'
WND type_name
FROM tbl


اینکه تا بحال چندین بار مطرح شده

از این دستور نتونستم استفاده کنم. میشه یکم دیگه توضیح بدید

محسن بابائی
چهارشنبه 25 مرداد 1385, 09:48 صبح
دوست عزیز راه بالا هم درسته ولی من پیشنهادم اینه که از همون دستور update استفاده کنی بهتره.فکر کنم خیلی سریعتر باشه.میتونی در QA تست کنی.


Update view1
set type='سیب'
where type=1


این دستور که table را هم تغییر میده و من فقط می خوام تغیرات فقط توی view انجام بشه

majid_afra222
چهارشنبه 25 مرداد 1385, 11:50 صبح
سلام


SELECT
CASE type
WHEN 1 THEN N'سیب'
WHNE 2 THEN N'گلابی'
ELSE N'هیچ کدام'
WND type_name
FROM tbl


ببخشید اشتباه شد.

محسن بابائی
پنج شنبه 26 مرداد 1385, 05:00 صبح
آقا مجید سلام
این view که من درست کردم از ترکیب 3 4 تا table درست شده . حالا شما به من بگید این کد را چگونه و کجا بنویسم

majid_afra222
پنج شنبه 26 مرداد 1385, 07:18 صبح
سلام
کد View نوشته شدت رو بذار، یا اینکه این کد رو جاییکه متغیر عددیت هستش و میخوای با یک نام جایگزینش کنی قرار بده.

محسن بابائی
شنبه 28 مرداد 1385, 07:00 صبح
سلام
کد View نوشته شدت رو بذار، یا اینکه این کد رو جاییکه متغیر عددیت هستش و میخوای با یک نام جایگزینش کنی قرار بده.

سلام اینم کد

SELECT dbo.Table2.Family AS Family, dbo.Table1.name, dbo.Table1.ID, dbo.Table1.Type
FROM dbo.Table1 INNER JOIN
dbo.Table2 ON dbo.Table1.ID = dbo.Table2.ID

majid_afra222
شنبه 28 مرداد 1385, 07:56 صبح
سلام
اینم جواب :


SELECT Table2.Family AS Family, Table1.name, Table1.ID,
CASE Table1.Type
WHEN 1 THEN N'سیب'
WHEN 2 THEN N'گلابی'
ELSE N'هیچ کدام'
END Type_Name
FROM Table1 INNER JOIN
Table2 ON Table1.ID = Table2.ID

محسن بابائی
شنبه 28 مرداد 1385, 13:43 عصر
آقا مجید دستت در نکنه . ممنون ایشالا هر چی میخوای خدا بهت بده