PDA

View Full Version : این سلکت رو چه طوری کوتاه تر و بهینه تر بنویسم



shocraneh
جمعه 04 آذر 1390, 10:18 صبح
کدزیر درسته فقط اگه میشه به روش بهتری عمل کرد لطفا راهنمایی کنید.خیلی طولانیه

CREATE TABLE [dbo].[Tbl_Transaction](
[Id] [bigint] IDENTITY(1,1) NOT NULL,
[Num] [bigint] NOT NULL,
[Type] [nvarchar](50) NOT NULL,
[Properties] [nvarchar](50) NOT NULL,
[Cost] [bigint] NULL
)
محتویات
2، فروش کالا، لوله ، 1008
2 ، دریافت چک اشخاصف ملی ، 1236
2 ، دریافت نقد، صندوق ، 215
می خام این خروجی رو بگیرم
2 ، دریافت نقد، صندوق ، 215 ، دریافت چک اشخاص ،ملی، 1236 و البته به همین شکل همه تو یک رکورد نمایش داده بشه که بقیه اش رو ننوشتم . کدم اینه

CREATE TABLE [dbo].[#T33]
(
[Num] bigint,
[Type] nvarchar(50) NULL,
[Properties] nvarchar(50) NULL,
[Cost] bigint,
[Type1] nvarchar(50) NULL,
[Properties1] nvarchar(50) NULL,
[Cost1] bigint

)ON [PRIMARY]
Insert Into #T33
(Num ,Type ,Properties,Cost )
select Tbl_TransactionsList.Num ,Type ,Properties,Cost
from Tbl_Transaction
Where Type=N'دریافت نقد' and Tbl_TransactionsList.Num=2

Update #T33
set Type1 =
(select Type
from Tbl_Transaction
Where Type=N'دریافت چک اشخاص' and Tbl_TransactionsList.Num=2
),
Properties1 =
(select Properties
from Tbl_Transaction
Where Type=N'دریافت چک اشخاص' and Tbl_TransactionsList.Num=2
)
select * from #T33

Do0o0nya
شنبه 05 آذر 1390, 13:11 عصر
با استفاده از corsur