mysql_SunRiseSet
1.0.0
MySQL/Mariadb功能可根據日期和緯度/經度計算日出/日落時間。
This implementation is based by the algorithm found on http://web.archive.org/web/20161202180207/http://williams.best.vwh.net/sunrise_sunset_algorithm.htm
在lib_mysqludf_astro下,可以找到更強大的變體作為MySQL負載函數實現。
例如,執行sunriseset.sql的代碼
mysql -u <username> -p <yourdb> < SunRiseSet.sql
用日期,您的位置以及您想回來的時間致電該功能(日出,日落)
paramater是:
興趣日期-MySQL日期格式yyyy-mm-dd
位置緯度 - 浮動
位置經度 - 浮動
東方的陽性和負面的西部。
日出/日落的太陽頂峰:
期望的結果 - 枚舉['Sunrise','Sunset']
用您的本地設置替換緯度0.0000和經度0.0000:
-- official sunset/sunrise
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 'official', 'sunset'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 'official', 'sunrise');
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 90+(50/60), 'sunset'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 90.833333333, 'sunrise');
-- civil
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 'civil', 'sunset'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 'civil', 'rise');
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 96, 'sunset'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 96, 'rise');
-- nautical
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 'nautical', 'set'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 'nautical', 'rise');
-- astronomical
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 'astro', 'sunset'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 'astro', 'sunrise');
-- self defined sun horizon level
SELECT system.SunRiseSet(NOW(), 0.0000, 0.0000, 86.2, 'sunset'), system.SunRiseSet(NOW(), 0.0000, 0.0000, 86.2, 'sunrise');