USD bazında günlük döviz alış kurlarını listelemem gerekiyor fakat veritabanında haftasonuna ve resmi tatil günlerine denk gelen zamanlarda kur bilgisi yok. Ben, resmi tatil ve hafta sonlarında da geçerli bir kur değeri bulmak zorundayım, bunu nasıl bir select cümlesiyle çözebilirim? Yani özetlersek, iki tarih arasındaki tüm günlerin karşısına bir USD kur listesi çekmek istersem bunu nasıl bir select cümlesiyle yapmalıyım?
İlgilendiğiniz için teşekkürler,
NOT: Verileri TCMB'den çekiyorum. Aşağıdaki SQL Scripti MySQL içindir.
Kod: Tümünü seç
CREATE TABLE `sm_kurlar` (
`Ref` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
`Tarih` DATETIME NOT NULL,
`Kod` VARCHAR(3) NOT NULL, /* USD, EUR, JPY gibi... */
`Carpan` INT(10) UNSIGNED NULL DEFAULT '1', /* "100 JAPON YENİ 1.9316 TL" gibi bir ibare nedeniyle bunu ekledim. Yani "1 ABD DOLARI 2.2927 TL* gibi genel bir ibare de var. Bu durumda 1 japon yenini bulmak için kur değerini 100'e bölmek gerekiyor... */
`DovizAlis` DECIMAL(19,5) UNSIGNED NOT NULL,
`DovizSatis` DECIMAL(19,5) UNSIGNED NOT NULL,
`EfektifAlis` DECIMAL(19,5) UNSIGNED NOT NULL,
`EfektifSatis` DECIMAL(19,5) UNSIGNED NOT NULL,
`USDParite` DECIMAL(19,5) UNSIGNED NOT NULL,
`EuroParite` DECIMAL(19,5) UNSIGNED NOT NULL,
`DigerParite` DECIMAL(19,5) UNSIGNED NOT NULL,
PRIMARY KEY (`Ref`),
UNIQUE INDEX `Tarih_Kod` (`Tarih`, `Kod`),
INDEX `Kod` (`Kod`),
INDEX `Tarih` (`Tarih`)
)
COMMENT='Kur verileri yer alır.'
COLLATE='utf8_general_ci'
ENGINE=InnoDB
AUTO_INCREMENT=1
;
Kod: Tümünü seç
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-14 00:00:00', 'EUR', 1, 2.69790, 2.70280, 2.69600, 2.70690, 0.00000, 0.00000, 1.17670);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-14 00:00:00', 'IRR', 100, 0.00010, 0.00010, 0.00000, 0.00000, 273.48000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-14 00:00:00', 'JPY', 100, 0.01960, 0.01970, 0.01950, 0.01980, 1.16920, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-14 00:00:00', 'USD', 1, 2.29270, 2.29680, 2.29110, 2.30020, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-13 00:00:00', 'EUR', 1, 2.68990, 2.69480, 2.68800, 2.69880, 0.00000, 0.00000, 1.18100);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-13 00:00:00', 'IRR', 100, 0.00010, 0.00010, 0.00000, 0.00000, 273.14000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-13 00:00:00', 'JPY', 100, 0.01920, 0.01930, 0.01910, 0.01940, 1.18440, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-13 00:00:00', 'USD', 1, 2.27780, 2.28190, 2.27620, 2.28530, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-12 00:00:00', 'EUR', 1, 2.70370, 2.70860, 2.70180, 2.71270, 0.00000, 0.00000, 1.18110);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-12 00:00:00', 'IRR', 100, 0.00010, 0.00010, 0.00000, 0.00000, 272.92000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-12 00:00:00', 'JPY', 100, 0.01920, 0.01930, 0.01910, 0.01940, 1.18970, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-12 00:00:00', 'USD', 1, 2.28910, 2.29320, 2.28750, 2.29660, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-09 00:00:00', 'EUR', 1, 2.71690, 2.72180, 2.71500, 2.72590, 0.00000, 0.00000, 1.18100);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-09 00:00:00', 'IRR', 100, 0.00010, 0.00010, 0.00000, 0.00000, 272.94000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-09 00:00:00', 'JPY', 100, 0.01920, 0.01940, 0.01920, 0.01940, 1.19310, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-09 00:00:00', 'USD', 1, 2.30050, 2.30470, 2.29890, 2.30820, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-08 00:00:00', 'EUR', 1, 2.71990, 2.72480, 2.71800, 2.72890, 0.00000, 0.00000, 1.17870);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-08 00:00:00', 'IRR', 100, 0.00010, 0.00010, 0.00000, 0.00000, 272.94000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-08 00:00:00', 'JPY', 100, 0.01920, 0.01930, 0.01910, 0.01940, 1.19780, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-08 00:00:00', 'USD', 1, 2.30760, 2.31180, 2.30600, 2.31530, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-07 00:00:00', 'EUR', 1, 2.75670, 2.76170, 2.75480, 2.76580, 0.00000, 0.00000, 1.18540);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-07 00:00:00', 'IRR', 100, 0.00010, 0.00010, 0.00000, 0.00000, 272.63000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-07 00:00:00', 'JPY', 100, 0.01950, 0.01960, 0.01940, 0.01970, 1.19070, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-07 00:00:00', 'USD', 1, 2.32550, 2.32970, 2.32390, 2.33320, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-06 00:00:00', 'EUR', 1, 2.77360, 2.77860, 2.77170, 2.78280, 0.00000, 0.00000, 1.19160);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-06 00:00:00', 'IRR', 100, 0.00850, 0.00860, 0.00000, 0.00000, 27232.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-06 00:00:00', 'JPY', 100, 1.95050, 1.96340, 1.94330, 1.97090, 119.05000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-06 00:00:00', 'USD', 1, 2.32770, 2.33190, 2.32610, 2.33540, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-05 00:00:00', 'EUR', 1, 2.79310, 2.79810, 2.79110, 2.80230, 0.00000, 0.00000, 1.19300);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-05 00:00:00', 'IRR', 100, 0.00860, 0.00870, 0.00000, 0.00000, 27233.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-05 00:00:00', 'JPY', 100, 1.94150, 1.95440, 1.93430, 1.96180, 120.29000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-05 00:00:00', 'USD', 1, 2.34110, 2.34530, 2.33950, 2.34880, 1.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-02 00:00:00', 'EUR', 1, 2.82580, 2.83090, 2.82380, 2.83510, 0.00000, 0.00000, 1.20510);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-02 00:00:00', 'IRR', 100, 0.00860, 0.00870, 0.00000, 0.00000, 27174.00000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-02 00:00:00', 'JPY', 100, 1.94190, 1.95470, 1.93470, 1.96210, 120.47000, 0.00000, 0.00000);
INSERT INTO `sm_kurlar` (`Tarih`, `Kod`, `Carpan`, `DovizAlis`, `DovizSatis`, `EfektifAlis`, `EfektifSatis`, `USDParite`, `EuroParite`, `DigerParite`) VALUES ('2015-01-02 00:00:00', 'USD', 1, 2.34490, 2.34910, 2.34330, 2.35260, 1.00000, 0.00000, 0.00000);