• 1402/07/10

خطای cte :

سلام و وقت بخیر 

من دوره رو sql server رو تهیه کردم الان درس 56 این دوره هستم مربوط به CTE ها که هرکاری میکنم دستور اجرا نمیشه و یه خطایی رو به من میده که متوجه نمیشم حتی دیتابیس جدید و جداول جدید تعریف کردم باز خطا میده، تصور رو براتون ضمیمه کردم ممنون میشم راهنمایی کنید. باتشکر

  • 1402/07/10
  • ساعت 15:28

سلام دوست من 

باید بعد از پرانتر انتهایی از CTE تون استفاده کنید 

یا آپدیت بنویسید براش یا  Select شو بنویسید 

این شکلی که شما نوشتید ناقص هست 

 

ماننده نمونه پایین پیش برید 

 

        WITH CTE_NAME AS

(

SELECT * FROM dbo.Employees CROSS JOIN   dbo.Products

)

SELECT *

FROM CTE_NAME


  • 1402/07/10
  • ساعت 17:13

سلام مجدد و تشکر بابت پاسخگویی تون

من اینکار رو هم انجام میدم باز خطا میده هم برای select  و هم برای update نمیدونم اشتباهم کجاست؟


  • 1402/07/10
  • ساعت 18:35

ستون ID بصورت Multiple  در اومده  اسم ستون های داحل CTE  رو با Alias بنویسید 

مانند 

WITH CTE_NAME AS

 

(

 

SELECT E.EmployeeID , E.FirstName   FROM dbo.Employees E  CROSS JOIN   dbo.Products

 

)

 

SELECT *

 

FROM CTE_NAME

 


  • 1402/07/11
  • ساعت 19:14

بابت پاسخگویی و راهنمایی هاتون خیلی ممنون و سپاسگزارم ببخشید من اینقدر سوال میپرسم، چون توی توضیحاتتون به اهمیت این مبحث خیلی تاکید کردید منم میخوام خوب یاد بگیرم. من طبق این دستوراتی که فرمودید هم انجام دادم اما باز خطا میده


  • 1402/07/11
  • ساعت 20:08

سلامت باشی دوست من 

خطای syntax دارید 

داخل CTE بعد از From نیاز به اصلاح داره 

select p.id ,  p.firstname from personal p cross join people pe  

 

 


  • 1402/07/11
  • ساعت 23:34

خیلی ممنونم از راهنمایی خوبتون، مشکلم برطرف شد


  • 1402/07/12
  • ساعت 03:11

خداروشکر 

سلامت باشید 


logo-enamadlogo-samandehi