UI設計したり、ウェブシステムを開発したりします。 

SQL見るだけクエリ#058 天気予報のデータをAPIで取得してみる。天気予報API:Open-Meteo

記入日:2023-03-07 編集日:2023-03-07

SQL見るだけクエリ。今回は、天気予報のデータをAPIで取得してみます。天気予報API:Open-Meteo

この記事を読むと(約5分)
APIで天気予報のデータを取得し、表示する方法がイメージできます。

Open-Meteoは、非商用利用であれば無料で使えるオープンソースの天気予報APIです。 APIキーは不要で、すぐに利用できます。世界中の場所に対して、時間ごとの7日間の天気予報を提供しています。

東京の、湿度と風速を取得してみます。

// APIのURLを指定
$url = "https://api.open-meteo.com/v1/forecast?latitude=35.68&longitude=139.76&hourly=relativehumidity_2m,windspeed_10m&timezone=Asia%2FTokyo";

// URLからJSONデータを取得
$json = file_get_contents($url);

// JSONデータを連想配列に変換
$data = json_decode($json, true);

取得結果は以下の様になります。

timerelativehumidity_2mwindspeed_10m
2026-01-10T00:00713.8
2026-01-10T01:00645.1
2026-01-10T02:00615.4
2026-01-10T03:00585.8
2026-01-10T04:00576
2026-01-10T05:00575.3
2026-01-10T06:00583.8
2026-01-10T07:00651.9
2026-01-10T08:00581.4
2026-01-10T09:00551.8
2026-01-10T10:00523.6
2026-01-10T11:00577.7
2026-01-10T12:004611.4
2026-01-10T13:004613.4
2026-01-10T14:004514
2026-01-10T15:005016.8
2026-01-10T16:005718
2026-01-10T17:006114.5
2026-01-10T18:006512.7
2026-01-10T19:006611.5
2026-01-10T20:006810.5
2026-01-10T21:007211.8
2026-01-10T22:007613.1
2026-01-10T23:007814.3
2026-01-11T00:008013.8
2026-01-11T01:007913.3
2026-01-11T02:007813.3
2026-01-11T03:007612.9
2026-01-11T04:007311.5
2026-01-11T05:006310.9
2026-01-11T06:005510.3
2026-01-11T07:00557.9
2026-01-11T08:00527.2
2026-01-11T09:00457.9
2026-01-11T10:00439.6
2026-01-11T11:00417.2
2026-01-11T12:003810.4
2026-01-11T13:003015.7
2026-01-11T14:002817.1
2026-01-11T15:003414.8
2026-01-11T16:003415
2026-01-11T17:003314.8
2026-01-11T18:003114.5
2026-01-11T19:004112.8
2026-01-11T20:004013.7
2026-01-11T21:004012.8
2026-01-11T22:003911.1
2026-01-11T23:00409.3
2026-01-12T00:00418.4
2026-01-12T01:00447.6
2026-01-12T02:00477
2026-01-12T03:00496.7
2026-01-12T04:00516.9
2026-01-12T05:00516.1
2026-01-12T06:00526.1
2026-01-12T07:00535.4
2026-01-12T08:00535.4
2026-01-12T09:00505.1
2026-01-12T10:00434.8
2026-01-12T11:00384.8
2026-01-12T12:00384.1
2026-01-12T13:00383.3
2026-01-12T14:00393.3
2026-01-12T15:00423.9
2026-01-12T16:00484.4
2026-01-12T17:00563.3
2026-01-12T18:00633.3
2026-01-12T19:00713.6
2026-01-12T20:00693.7
2026-01-12T21:00725.1
2026-01-12T22:00753.5
2026-01-12T23:00774.5
2026-01-13T00:00703.4
2026-01-13T01:00702.7
2026-01-13T02:00692.3
2026-01-13T03:00712.9
2026-01-13T04:00653.2
2026-01-13T05:00702.5
2026-01-13T06:00682.2
2026-01-13T07:00605.6
2026-01-13T08:00517.8
2026-01-13T09:00427.4
2026-01-13T10:00427
2026-01-13T11:00429.5
2026-01-13T12:004212.3
2026-01-13T13:004014.6
2026-01-13T14:004017
2026-01-13T15:003918.6
2026-01-13T16:004017.7
2026-01-13T17:004513.7
2026-01-13T18:004910.5
2026-01-13T19:00528.9
2026-01-13T20:00557.9
2026-01-13T21:00576.1
2026-01-13T22:00603.1
2026-01-13T23:00640.8
2026-01-14T00:00653.3
2026-01-14T01:00624
2026-01-14T02:00563.6
2026-01-14T03:00533.2
2026-01-14T04:00553.3
2026-01-14T05:00593
2026-01-14T06:00613.1
2026-01-14T07:00613.1
2026-01-14T08:00602.7
2026-01-14T09:00563.1
2026-01-14T10:00484.5
2026-01-14T11:00396.2
2026-01-14T12:00326.5
2026-01-14T13:00304.3
2026-01-14T14:00311.3
2026-01-14T15:00341.8
2026-01-14T16:00392.3
2026-01-14T17:00453.3
2026-01-14T18:00493.9
2026-01-14T19:00494.5
2026-01-14T20:00466.1
2026-01-14T21:00457.6
2026-01-14T22:00477.2
2026-01-14T23:00515.8
2026-01-15T00:00544.7
2026-01-15T01:00564.3
2026-01-15T02:00574.1
2026-01-15T03:00593.9
2026-01-15T04:00613.7
2026-01-15T05:00643.9
2026-01-15T06:00653.6
2026-01-15T07:00643.3
2026-01-15T08:00622.8
2026-01-15T09:00592.1
2026-01-15T10:00521.1
2026-01-15T11:00440.4
2026-01-15T12:00391.8
2026-01-15T13:00394.7
2026-01-15T14:00438.4
2026-01-15T15:004710.2
2026-01-15T16:00539
2026-01-15T17:00606.6
2026-01-15T18:00645.2
2026-01-15T19:00606.5
2026-01-15T20:00539.6
2026-01-15T21:004811.8
2026-01-15T22:005012
2026-01-15T23:005411.2
2026-01-16T00:005910
2026-01-16T01:00638.4
2026-01-16T02:00676.7
2026-01-16T03:00704.5
2026-01-16T04:00731.8
2026-01-16T05:00762.6
2026-01-16T06:00764.6
2026-01-16T07:00724.2
2026-01-16T08:00653.1
2026-01-16T09:00582.6
2026-01-16T10:00505
2026-01-16T11:00428.7
2026-01-16T12:003611.3
2026-01-16T13:003312.1
2026-01-16T14:003211.4
2026-01-16T15:003211.1
2026-01-16T16:003410.7
2026-01-16T17:003810.6
2026-01-16T18:00419.8
2026-01-16T19:00448.6
2026-01-16T20:00467.6
2026-01-16T21:00496.3
2026-01-16T22:00524
2026-01-16T23:00551.3

SQLの使いどころ

サイトに大量の情報を掲載することは、ユーザーにとってとても便利なことです。しかし、情報が多すぎると、目的の情報を見つけるのが困難になります。そのため、SQLを使用することで、情報を効率的に管理することができます。

SQLを使用することで、データベース内の情報を検索したり、フィルタリングしたりすることができます。これにより、ユーザーは目的の情報をスムーズかつ簡単に見つけることができます。

また、SQLを使用することで、データを集計したり、統合したりすることもできます。これにより、ユーザーはさまざまな視点から情報を分析することができます。つまり、サイトに多くの情報を掲載することが重要である一方で、その情報を効率的かつ簡単に管理することが求められる場合には、SQLが不可欠であるといえます。

KK

機械工学を専攻。工業デザイナーとして、国内及び海外の自動車・搬送ラインの設計などに従事した後、2003年にウェブシステム会社を設立。UI設計やウェブシステムの開発、DX化のディレクションなどを行っています。