Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
SQL de Aynı Tablo İçinde Kopyalamak
#1
Arkadaşlar Merhaba; Yapmak istediğim Tablo da bulunan hareket kaydını farklı fiş numarasında kopyalamak. Aşağıdaki Kod ile '000000000000030' nolu fiş numarasını buluyorum. Bu fişi bu şekilde '100000000000005' olarak kopyalamak istiyorum.
'000000000000030' nolu fiş aynen kalacak, fiş ve cari ye ait 7 tane kayıt var.


SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'

Bu şekilde bir kodum daha var ama bu sadece bir adet kopyalama yapıyor hareket de 7 tane farklı aynı cari ve fış e ait veri var;

INSERT INTO TBLSTHAR
(STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA, 
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI)
VALUES
('9000033','100000000000005','6.00000000','G','2018-02-12 00:00:00','13.52000000','13.52000000','11.06800000','8.00','2','000940','2','1','J','30','F','000940','02','1','1','2018-03-14 00:00:00','0','2018-02-12 00:00:00','0','A') 
SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'


Yardımcı olabilir misiniz? Nasıl yapabilirim?
Cevapla
#2
(09-04-2019, Saat: 08:12)OZCANK Adlı Kullanıcıdan Alıntı: Arkadaşlar Merhaba; Yapmak istediğim Tablo da bulunan hareket kaydını farklı fiş numarasında kopyalamak. Aşağıdaki Kod ile '000000000000030' nolu fiş numarasını buluyorum. Bu fişi bu şekilde '100000000000005' olarak kopyalamak istiyorum.
'000000000000030' nolu fiş aynen kalacak, fiş ve cari ye ait 7 tane kayıt var.


SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'

Bu şekilde bir kodum daha var ama bu sadece bir adet kopyalama yapıyor hareket de 7 tane farklı aynı cari ve fış e ait veri var;

INSERT INTO TBLSTHAR
(STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA, 
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI)
VALUES
('9000033','100000000000005','6.00000000','G','2018-02-12 00:00:00','13.52000000','13.52000000','11.06800000','8.00','2','000940','2','1','J','30','F','000940','02','1','1','2018-03-14 00:00:00','0','2018-02-12 00:00:00','0','A') 
SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'


Yardımcı olabilir misiniz? Nasıl yapabilirim?

Insert cümlenizden sonra gelen Values kısmını silin, yerine SELECT ifadesini koyun. Örneğin:

Insert Into Tablom(AlanA, AlanB, AlanC)
SELECT
  BaskaAlanA,
  'Elle Değer Veriyorum',
  BaskaAlanC
FROM BaskaTablo;
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#3
(09-04-2019, Saat: 09:14)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı:
(09-04-2019, Saat: 08:12)OZCANK Adlı Kullanıcıdan Alıntı: Teşekkür ederim. Dediğinizi denedim. İstediğim aynı tablo içerisine kopyalamak sadece FISNO farklı olacak.
Bu alış faturası ben aynı tablo da onu satış faturasına çevirmeliyim.
INSERT li olan kod 1 stok için çeviriyor oda stok kodu yazılı olduğu için. Farklı 7 stok var aynı kod ve fiş e ait.
Sonrasında bu kodu delphiye alıp G (Giriş) i C (Çıkış) ve fatura tipini değiştirerek kaydettirecem.


Arkadaşlar Merhaba; Yapmak istediğim Tablo da bulunan hareket kaydını farklı fiş numarasında kopyalamak. Aşağıdaki Kod ile '000000000000030' nolu fiş numarasını buluyorum. Bu fişi bu şekilde '100000000000005' olarak kopyalamak istiyorum.
'000000000000030' nolu fiş aynen kalacak, fiş ve cari ye ait 7 tane kayıt var.

SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'

Bu şekilde bir kodum daha var ama bu sadece bir adet kopyalama yapıyor hareket de 7 tane farklı aynı cari ve fış e ait veri var;

INSERT INTO TBLSTHAR
(STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA, 
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI)
VALUES
('9000033','100000000000005','6.00000000','G','2018-02-12 00:00:00','13.52000000','13.52000000','11.06800000','8.00','2','000940','2','1','J','30','F','000940','02','1','1','2018-03-14 00:00:00','0','2018-02-12 00:00:00','0','A') 
SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'


Yardımcı olabilir misiniz? Nasıl yapabilirim?

Insert cümlenizden sonra gelen Values kısmını silin, yerine SELECT ifadesini koyun. Örneğin:

Insert Into Tablom(AlanA, AlanB, AlanC)
SELECT
  BaskaAlanA,
  'Elle Değer Veriyorum',
  BaskaAlanC
FROM BaskaTablo;
Cevapla
#4
Ben sadece örnek olsun diye tablo isimlerini farklı verdim. Sizin aynı tablo'yu kullanmanızda bir behis yok.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla
#5
(09-04-2019, Saat: 09:59)Tuğrul HELVACI Adlı Kullanıcıdan Alıntı: Ben sadece örnek olsun diye tablo isimlerini farklı verdim. Sizin aynı tablo'yu kullanmanızda bir behis yok.
Kod şu şekilde sizin dediğiniz gibi bu durum da 7 Adet stok hareketini aynı şekilde bütün alanları le beraber 7 tane daha kopyalayıp 14 tane yapıyor. Sadece FISNO='000000000000030' yerine FISNO='100000000000005' olarak bütün alanları ile kaydetmek istiyorum.

INSERT INTO TBLSTHAR
(STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI)
SELECT
STOK_KODU,
FISNO,
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'
Cevapla
#6
Merhaba,
FISNO alanına sabit değer atayın o zaman.
SELECT
STOK_KODU,
'100000000000005',
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#7
(09-04-2019, Saat: 10:11)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
FISNO alanına sabit değer atayın o zaman.
SELECT
STOK_KODU,
'100000000000005',
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'

Çok teşekkür ederim, Allah Razı Olsun  Fesih Bey bu şekilde dediğiniz gibi yaptım ve oldu;

SELECT
STOK_KODU,
FISNO='100000000000005',
STHAR_GCMIK, 
Cevapla
#8
(09-04-2019, Saat: 10:20)OZCANK Adlı Kullanıcıdan Alıntı:
(09-04-2019, Saat: 10:11)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Merhaba,
FISNO alanına sabit değer atayın o zaman.
SELECT
STOK_KODU,
'100000000000005',
STHAR_GCMIK, 
STHAR_GCKOD, 
STHAR_TARIH, 
STHAR_NF, 
STHAR_BF, 
STHAR_IAF, 
STHAR_KDV, 
DEPO_KODU, 
STHAR_ACIKLAMA, 
STHAR_FTIRSIP, 
LISTE_FIAT, 
STHAR_HTUR, 
STHAR_ODEGUN, 
STHAR_BGTIP, 
STHAR_CARIKOD, 
PLASIYER_KODU, 
SIRA,
OLCUBR, 
VADE_TARIHI, 
SUBE_KODU, 
D_YEDEK10, 
EXPORTTYPE, 
ONAYTIPI
FROM TBLSTHAR WHERE STHAR_ACIKLAMA = '000940' AND FISNO = '000000000000030'

Çok teşekkür ederim, Allah Razı Olsun  Fesih Bey bu şekilde dediğiniz gibi yaptım ve oldu;

SELECT
STOK_KODU,
FISNO='100000000000005',
STHAR_GCMIK, 

Ben size farklı bir tavsiyede mi bulunmuştum acaba ! Balık tutmayı öğrenmeye çalışmanızı öneririm.
Mal sahibi, mülk sahibi
Hani bunun ilk sahibi ?
Mal da yalan mülk de yalan
Var biraz da sen oyalan...
WWW
Cevapla


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  fonksiyon içinde parametreye default değer atama sorunu adelphiforumz 6 222 24-05-2019, Saat: 11:20
Son Yorum: adelphiforumz
  Delphi 7- 4 Adet Tablo Döngü Problemi bsrgmsy 2 218 20-05-2019, Saat: 17:17
Son Yorum: bsrgmsy
  Veri tabanına aynı değeri tekrarlama arsl01 21 626 03-05-2019, Saat: 11:34
Son Yorum: edo
  SQL Tablo Var veya Yok Kontrolu !! OZCANK 8 657 13-02-2019, Saat: 08:30
Son Yorum: Tuğrul HELVACI
  Sql Filtre (İçinde "a" harfi geçenler) burak 15 865 14-01-2019, Saat: 11:15
Son Yorum: Tuğrul HELVACI



Konuyu Okuyanlar: 1 Ziyaretçi