berupa dua tabel? bagaimana fomatnya ?
berupa tiga tabel? bagaimana formatnya ?
coba ilustrasikan dengan file excel, asal data dan hasil yang diinginkan.
ado recordset bisa mengembalikan banyak recordset dari satu eksekusi stored procedure yang menghasilkan banyak recordset.
misalkan kita punya storeprocedure yang mengembalikan dua recordset:
create proc sp_x_dan_y
as
select a,b,c from x
select a,b,c from y
maka di vba dengan ado kita bisa tarik recordset dari suatu command:
(r1 dan r2 adalah recordset object, cmd adalah command)
set r1 = cmd.execute
set r2 = r1.nextrecodset
bekerja dengan banyak tabel di storeprocedure sql server dapat ditempuh dengan berbagai cara:
1. subquery
select x.a,x.b,y.c
from
(select a,b,c
from x) as x
inner join
(select a,b,c
from y) as y
on x.a=y.a
2. temporary table
select a,b,c into #x from x
select a,b,c into #y from y
select x.a,x.b, y.c
from #x x
inner join #y y on x.a=y.a
drop table #x
drop table #y
3. temp table variable (more faster than temporary table)
declare @x table (a varchar(30), b int, c int)
declare @y table (a varchar(30), b int, c int)
insert into @x (a,b,c)
select a,b,c from x
insert into @y (a,b,c)
select a,b,c from y
select x.a, x.b, y.c
from @x x
inner join @y y on x.a=y.a
4. function return table
create function fn_x()
returns table
as
return
select a,b,c from x
create function fn_y()
returns table
as return
select a,b,c from y
select x.a, x.b, y.c
from fn_x() x
inner join fn_y() y on x.a = x.b
aksan kurdin
On 2/25/2014 6:21 AM, kbasuseno@yahoo.com wrote:
Dear Pakar,
Mau tanyaMisalkan kita ada data sbb :
Date COA Debit Credit
01-Jan 11101 100 -
01-Jan 11101 200 -
01-Jan 11101 150 -
01-Jan 11101 - 50
02-Jan 11101 - 50
02-Jan 11101 200
02-Jan 11101 100 -
02-Jan 11101 200 -
02-Jan 11101 150 -
02-Jan 11101 - 50
03-Jan 11101 - 50
03-Jan 11101 200
03-Jan 11101 100 -
03-Jan 11101 200 -
03-Jan 11101 150 -
03-Jan 11101 - 50Saya ingin pecah data tersebut menjadi Opening Balance, Transaction dan Ending Balance
Opening Balance :
Select COA, sum(Debit) As OBDebit, Sum(Credit) As OBCredit From dbo.tableName
Where Doc_date '2014-02-01')Transaction :
Select COA, sum(Debit) As TransDebit, Sum(Credit) As TransCredit From dbo.tableName
Where Doc_date Between '2014-02-01' and '2014-03-01'
Ending Balance :
EBDebit = OBDebit + TransDebit - TransCredit
EBCredit = OBCredit - TransDebit + TransCreditApakah bisa dibuat dalam 1 query / sp di sql server?
selama ini saya buat dulu 2 view baru di joint di sp, apakah bisa langsung dibuat dalam setu sp saja?terima kasih
Reply via web post | Reply to sender | Reply to group | Start a New Topic | Messages in this topic (3) |
Tidak ada komentar:
Posting Komentar