Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Az alábbi táblázat az ODBC skaláris függvénykészletében szereplő idő- és dátumfüggvényeket sorolja fel. Az alkalmazások az illesztőprogramok által támogatott idő- és dátumfüggvényeket úgy határozhatják meg, hogy meghívják SQLGetInfo egy SQL_TIMEDATE_FUNCTIONS adattípussal.
A timestamp_exp jelölésű argumentumok lehetnek egy oszlop neve, egy másik skaláris függvény vagy egy ODBC-time-escape, ODBC-date- escapevagy ODBC-timestamp-escapeeredménye, ahol a mögöttes adattípus SQL_CHAR, SQL_VARCHAR, SQL_TYPE_TIME, SQL_TYPE_DATE vagy SQL_TYPE_TIMESTAMP lehet.
Az date_exp argumentum lehet egy oszlop neve, egy másik skaláris függvény eredménye, vagy egy ODBC-date- escape vagy ODBC-timestamp-escape, ahol a mögöttes adattípus SQL_CHAR, SQL_VARCHAR, SQL_TYPE_DATE vagy SQL_TYPE_TIMESTAMP lehet.
A time_exp argumentum lehet egy oszlop neve, egy másik skaláris függvény eredménye, vagy egy ODBC-time-escape vagy ODBC-timestamp-escape, ahol a mögöttes adattípus SQL_CHAR, SQL_VARCHAR, SQL_TYPE_TIME vagy SQL_TYPE_TIMESTAMP lehet.
A CURRENT_DATE, CURRENT_TIME és CURRENT_TIMESTAMP idődátumos skaláris függvények hozzáadva lettek az ODBC 3.0-ban az SQL-92-hez való igazodás érdekében.
| Funkció | Leírás |
|---|---|
| CURRENT_DATE( ) (ODBC 3.0) | Az aktuális dátumot adja vissza. |
| CURRENT_TIME[(idő pontosságú)] (ODBC 3.0) | Az aktuális helyi időpontot adja vissza. Az idő pontosságú argumentum határozza meg a visszaadott érték másodperces pontosságát. |
|
CURRENT_TIMESTAMP [(időbélyeg pontosságú)] (ODBC 3.0) |
Az aktuális helyi dátumot és helyi időt adja vissza időbélyegként. Az időbélyeg-pontosságú argumentum határozza meg a visszaadott időbélyeg másodperces pontosságát. |
| CURDATE( ) (ODBC 1.0) | Az aktuális dátumot adja vissza. |
| CURTIME( ) (ODBC 1.0) | Az aktuális helyi időpontot adja vissza. |
| DAYNAME(date_exp) (ODBC 2.0) | Egy olyan karaktersztringet ad vissza, amely a nap adatforrás-specifikus nevét tartalmazza (például vasárnaptól szombatig vagy vasárnaptól szombatig. a Sat. függvényen keresztül egy angolt használó adatforráshoz, vagy a Sonntag-on keresztül a Samstag-on keresztül egy németet használó adatforráshoz) a date_expnapjára. |
| DAYOFMONTH(date_exp) (ODBC 1.0) | A hónap napját adja vissza a date_exp hónap mezőjének alapján 1–31 közötti egész számként. |
| DAYOFWEEK(date_exp) (ODBC 1.0) | A hét napját adja vissza a date_exp hét mezőjének alapján egész számként az 1–7 tartományban, ahol az 1 a vasárnapot jelöli. |
| DAYOFYEAR(date_exp) (ODBC 1.0) | Az év napját adja vissza az date_exp év mezőjének alapján, 1–366 közötti egész számként. |
| EXTRACT(extract-field FROMextract-source) (ODBC 3.0) | A kinyert forráskinyert mező részét adja vissza. A kinyerési forrás argumentum egy datetime vagy interval kifejezés. A kinyert mező argumentum a következő kulcsszavak egyike lehet: ÉV HÓNAP NAPJA ÓRA PERC MÁSODPERC A visszaadott érték pontossága implementációban van definiálva. A skálázás 0, kivéve, ha a MÁSODIK meg van adva, ebben az esetben a skálázás nem kisebb, mint a kinyert forrás mező tört másodperces pontossága. |
| HOUR(time_exp) (ODBC 1.0) | Az órát adja vissza a time_exp óra mezőjének alapján, 0–23-as tartomány egész számaként. |
| MINUTE(time_exp) (ODBC 1.0) | A time_exp percmezője alapján adja vissza a percet egész számként a 0 és 59 közötti tartományban. |
| MONTH(date_exp) (ODBC 1.0) | A date_exp hónap mezőjének alapján adja vissza a hónapot egész számként az 1–12 tartományon belül. |
| MONTHNAME(date_exp) (ODBC 2.0) | Egy olyan karaktersztringet ad vissza, amely a hónap adatforrás-specifikus nevét tartalmazza (például januártól decemberig vagy januártól dec.-ig egy angolt használó adatforrás esetében, vagy januártól dezemberig egy németet használó adatforrás esetében) a date_exphónapjára. |
| NOW( ) (ODBC 1.0) | Az aktuális dátumot és időt időbélyegként adja vissza. |
| QUARTER(date_exp) (ODBC 1.0) | Az date_exp negyedévét adja vissza egész számként az 1–4 tartományban, ahol az 1 január 1–március 31. |
| SECOND(time_exp) (ODBC 1.0) | A másodikat a time_exp második mezője alapján adja vissza egész számként a 0–59 tartományon belül. |
| TIMESTAMPADD(intervallum, integer_exp, timestamp_exp) (ODBC 2.0) | Az SQL_TSI_FRAC_SECOND SQL_TSI_SECOND SQL_TSI_MINUTE SQL_TSI_HOUR SQL_TSI_DAY SQL_TSI_WEEK SQL_TSI_MONTH SQL_TSI_QUARTER SQL_TSI_YEAR ahol a másodperc törtrésze másodperc milliárd másodpercben van kifejezve. A következő SQL-utasítás például az egyes alkalmazottak nevét és az egyéves évforduló dátumát adja vissza: SELECT NAME, {fn TIMESTAMPADD(SQL_TSI_YEAR, 1, HIRE_DATE)} FROM EMPLOYEESHa timestamp_exp időérték, és intervallum napokat, heteket, hónapokat, negyedéveket vagy éveket határoz meg, a timestamp_exp dátumrésze az aktuális dátumra van állítva az eredményként kapott időbélyeg kiszámítása előtt. Ha timestamp_exp dátumérték, és intervallum a tört másodperceket, másodperceket, perceket vagy órákat adja meg, a timestamp_exp időaránya 0-ra van állítva az eredményként kapott időbélyeg kiszámítása előtt. Az alkalmazások az SQL_TIMEDATE_ADD_INTERVALS beállítással SQLGetInfo meghívásával határozzák meg az adatforrások által támogatott időközöket. |
| TIMESTAMPDIFF(intervallum, timestamp_exp1, timestamp_exp2) (ODBC 2.0) | A típusú intervallumok egész számát adja vissza,, amellyel a timestamp_exp2 nagyobb, mint timestamp_exp1. Az intervallum érvényes értékei a következő kulcsszavak: SQL_TSI_FRAC_SECOND SQL_TSI_SECOND SQL_TSI_MINUTE SQL_TSI_HOUR SQL_TSI_DAY SQL_TSI_WEEK SQL_TSI_MONTH SQL_TSI_QUARTER SQL_TSI_YEAR ahol a másodperc törtrésze másodperc milliárd másodpercben van kifejezve. Az alábbi SQL-utasítás például az egyes alkalmazottak nevét és az alkalmazotti évek számát adja vissza: SELECT NAME, {fn TIMESTAMPDIFF(SQL_TSI_YEAR, {fn CURDATE()}, HIRE_DATE)} FROM EMPLOYEESHa bármelyik időbélyeg-kifejezés időérték, és intervallum napokat, heteket, hónapokat, negyedéveket vagy éveket határoz meg, az időbélyeg dátumrésze az aktuális dátumra van állítva, mielőtt kiszámítja az időbélyegek közötti különbséget. Ha bármelyik időbélyeg-kifejezés dátumérték, és intervallum a tört másodperceket, másodperceket, perceket vagy órákat adja meg, az időbélyeg időaránya 0-ra van állítva az időbélyegek közötti különbség kiszámítása előtt. Az alkalmazások az SQL_TIMEDATE_DIFF_INTERVALS beállítással SQLGetInfo meghívásával határozzák meg az adatforrások által támogatott időközöket. |
| HÉT(date_exp) (ODBC 1.0) | Az év hetét adja vissza a date_exp hét mezőjének alapján, 1–53-as tartomány egész számaként. |
| YEAR(date_exp) (ODBC 1.0) | A date_exp év mezője alapján adja vissza az évet egész számként. A tartomány adatforrás-függő. |