記入日: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);
取得結果は以下の様になります。
| time | relativehumidity_2m | windspeed_10m |
|---|---|---|
| 2026-01-10T00:00 | 71 | 3.8 |
| 2026-01-10T01:00 | 64 | 5.1 |
| 2026-01-10T02:00 | 61 | 5.4 |
| 2026-01-10T03:00 | 58 | 5.8 |
| 2026-01-10T04:00 | 57 | 6 |
| 2026-01-10T05:00 | 57 | 5.3 |
| 2026-01-10T06:00 | 58 | 3.8 |
| 2026-01-10T07:00 | 65 | 1.9 |
| 2026-01-10T08:00 | 58 | 1.4 |
| 2026-01-10T09:00 | 55 | 1.8 |
| 2026-01-10T10:00 | 52 | 3.6 |
| 2026-01-10T11:00 | 57 | 7.7 |
| 2026-01-10T12:00 | 46 | 11.4 |
| 2026-01-10T13:00 | 46 | 13.4 |
| 2026-01-10T14:00 | 45 | 14 |
| 2026-01-10T15:00 | 50 | 16.8 |
| 2026-01-10T16:00 | 57 | 18 |
| 2026-01-10T17:00 | 61 | 14.5 |
| 2026-01-10T18:00 | 65 | 12.7 |
| 2026-01-10T19:00 | 66 | 11.5 |
| 2026-01-10T20:00 | 68 | 10.5 |
| 2026-01-10T21:00 | 72 | 11.8 |
| 2026-01-10T22:00 | 76 | 13.1 |
| 2026-01-10T23:00 | 78 | 14.3 |
| 2026-01-11T00:00 | 80 | 13.8 |
| 2026-01-11T01:00 | 79 | 13.3 |
| 2026-01-11T02:00 | 78 | 13.3 |
| 2026-01-11T03:00 | 76 | 12.9 |
| 2026-01-11T04:00 | 73 | 11.5 |
| 2026-01-11T05:00 | 63 | 10.9 |
| 2026-01-11T06:00 | 55 | 10.3 |
| 2026-01-11T07:00 | 55 | 7.9 |
| 2026-01-11T08:00 | 52 | 7.2 |
| 2026-01-11T09:00 | 45 | 7.9 |
| 2026-01-11T10:00 | 43 | 9.6 |
| 2026-01-11T11:00 | 41 | 7.2 |
| 2026-01-11T12:00 | 38 | 10.4 |
| 2026-01-11T13:00 | 30 | 15.7 |
| 2026-01-11T14:00 | 28 | 17.1 |
| 2026-01-11T15:00 | 34 | 14.8 |
| 2026-01-11T16:00 | 34 | 15 |
| 2026-01-11T17:00 | 33 | 14.8 |
| 2026-01-11T18:00 | 31 | 14.5 |
| 2026-01-11T19:00 | 41 | 12.8 |
| 2026-01-11T20:00 | 40 | 13.7 |
| 2026-01-11T21:00 | 40 | 12.8 |
| 2026-01-11T22:00 | 39 | 11.1 |
| 2026-01-11T23:00 | 40 | 9.3 |
| 2026-01-12T00:00 | 41 | 8.4 |
| 2026-01-12T01:00 | 44 | 7.6 |
| 2026-01-12T02:00 | 47 | 7 |
| 2026-01-12T03:00 | 49 | 6.7 |
| 2026-01-12T04:00 | 51 | 6.9 |
| 2026-01-12T05:00 | 51 | 6.1 |
| 2026-01-12T06:00 | 52 | 6.1 |
| 2026-01-12T07:00 | 53 | 5.4 |
| 2026-01-12T08:00 | 53 | 5.4 |
| 2026-01-12T09:00 | 50 | 5.1 |
| 2026-01-12T10:00 | 43 | 4.8 |
| 2026-01-12T11:00 | 38 | 4.8 |
| 2026-01-12T12:00 | 38 | 4.1 |
| 2026-01-12T13:00 | 38 | 3.3 |
| 2026-01-12T14:00 | 39 | 3.3 |
| 2026-01-12T15:00 | 42 | 3.9 |
| 2026-01-12T16:00 | 48 | 4.4 |
| 2026-01-12T17:00 | 56 | 3.3 |
| 2026-01-12T18:00 | 63 | 3.3 |
| 2026-01-12T19:00 | 71 | 3.6 |
| 2026-01-12T20:00 | 69 | 3.7 |
| 2026-01-12T21:00 | 72 | 5.1 |
| 2026-01-12T22:00 | 75 | 3.5 |
| 2026-01-12T23:00 | 77 | 4.5 |
| 2026-01-13T00:00 | 70 | 3.4 |
| 2026-01-13T01:00 | 70 | 2.7 |
| 2026-01-13T02:00 | 69 | 2.3 |
| 2026-01-13T03:00 | 71 | 2.9 |
| 2026-01-13T04:00 | 65 | 3.2 |
| 2026-01-13T05:00 | 70 | 2.5 |
| 2026-01-13T06:00 | 68 | 2.2 |
| 2026-01-13T07:00 | 60 | 5.6 |
| 2026-01-13T08:00 | 51 | 7.8 |
| 2026-01-13T09:00 | 42 | 7.4 |
| 2026-01-13T10:00 | 42 | 7 |
| 2026-01-13T11:00 | 42 | 9.5 |
| 2026-01-13T12:00 | 42 | 12.3 |
| 2026-01-13T13:00 | 40 | 14.6 |
| 2026-01-13T14:00 | 40 | 17 |
| 2026-01-13T15:00 | 39 | 18.6 |
| 2026-01-13T16:00 | 40 | 17.7 |
| 2026-01-13T17:00 | 45 | 13.7 |
| 2026-01-13T18:00 | 49 | 10.5 |
| 2026-01-13T19:00 | 52 | 8.9 |
| 2026-01-13T20:00 | 55 | 7.9 |
| 2026-01-13T21:00 | 57 | 6.1 |
| 2026-01-13T22:00 | 60 | 3.1 |
| 2026-01-13T23:00 | 64 | 0.8 |
| 2026-01-14T00:00 | 65 | 3.3 |
| 2026-01-14T01:00 | 62 | 4 |
| 2026-01-14T02:00 | 56 | 3.6 |
| 2026-01-14T03:00 | 53 | 3.2 |
| 2026-01-14T04:00 | 55 | 3.3 |
| 2026-01-14T05:00 | 59 | 3 |
| 2026-01-14T06:00 | 61 | 3.1 |
| 2026-01-14T07:00 | 61 | 3.1 |
| 2026-01-14T08:00 | 60 | 2.7 |
| 2026-01-14T09:00 | 56 | 3.1 |
| 2026-01-14T10:00 | 48 | 4.5 |
| 2026-01-14T11:00 | 39 | 6.2 |
| 2026-01-14T12:00 | 32 | 6.5 |
| 2026-01-14T13:00 | 30 | 4.3 |
| 2026-01-14T14:00 | 31 | 1.3 |
| 2026-01-14T15:00 | 34 | 1.8 |
| 2026-01-14T16:00 | 39 | 2.3 |
| 2026-01-14T17:00 | 45 | 3.3 |
| 2026-01-14T18:00 | 49 | 3.9 |
| 2026-01-14T19:00 | 49 | 4.5 |
| 2026-01-14T20:00 | 46 | 6.1 |
| 2026-01-14T21:00 | 45 | 7.6 |
| 2026-01-14T22:00 | 47 | 7.2 |
| 2026-01-14T23:00 | 51 | 5.8 |
| 2026-01-15T00:00 | 54 | 4.7 |
| 2026-01-15T01:00 | 56 | 4.3 |
| 2026-01-15T02:00 | 57 | 4.1 |
| 2026-01-15T03:00 | 59 | 3.9 |
| 2026-01-15T04:00 | 61 | 3.7 |
| 2026-01-15T05:00 | 64 | 3.9 |
| 2026-01-15T06:00 | 65 | 3.6 |
| 2026-01-15T07:00 | 64 | 3.3 |
| 2026-01-15T08:00 | 62 | 2.8 |
| 2026-01-15T09:00 | 59 | 2.1 |
| 2026-01-15T10:00 | 52 | 1.1 |
| 2026-01-15T11:00 | 44 | 0.4 |
| 2026-01-15T12:00 | 39 | 1.8 |
| 2026-01-15T13:00 | 39 | 4.7 |
| 2026-01-15T14:00 | 43 | 8.4 |
| 2026-01-15T15:00 | 47 | 10.2 |
| 2026-01-15T16:00 | 53 | 9 |
| 2026-01-15T17:00 | 60 | 6.6 |
| 2026-01-15T18:00 | 64 | 5.2 |
| 2026-01-15T19:00 | 60 | 6.5 |
| 2026-01-15T20:00 | 53 | 9.6 |
| 2026-01-15T21:00 | 48 | 11.8 |
| 2026-01-15T22:00 | 50 | 12 |
| 2026-01-15T23:00 | 54 | 11.2 |
| 2026-01-16T00:00 | 59 | 10 |
| 2026-01-16T01:00 | 63 | 8.4 |
| 2026-01-16T02:00 | 67 | 6.7 |
| 2026-01-16T03:00 | 70 | 4.5 |
| 2026-01-16T04:00 | 73 | 1.8 |
| 2026-01-16T05:00 | 76 | 2.6 |
| 2026-01-16T06:00 | 76 | 4.6 |
| 2026-01-16T07:00 | 72 | 4.2 |
| 2026-01-16T08:00 | 65 | 3.1 |
| 2026-01-16T09:00 | 58 | 2.6 |
| 2026-01-16T10:00 | 50 | 5 |
| 2026-01-16T11:00 | 42 | 8.7 |
| 2026-01-16T12:00 | 36 | 11.3 |
| 2026-01-16T13:00 | 33 | 12.1 |
| 2026-01-16T14:00 | 32 | 11.4 |
| 2026-01-16T15:00 | 32 | 11.1 |
| 2026-01-16T16:00 | 34 | 10.7 |
| 2026-01-16T17:00 | 38 | 10.6 |
| 2026-01-16T18:00 | 41 | 9.8 |
| 2026-01-16T19:00 | 44 | 8.6 |
| 2026-01-16T20:00 | 46 | 7.6 |
| 2026-01-16T21:00 | 49 | 6.3 |
| 2026-01-16T22:00 | 52 | 4 |
| 2026-01-16T23:00 | 55 | 1.3 |
SQLの使いどころ
サイトに大量の情報を掲載することは、ユーザーにとってとても便利なことです。しかし、情報が多すぎると、目的の情報を見つけるのが困難になります。そのため、SQLを使用することで、情報を効率的に管理することができます。
SQLを使用することで、データベース内の情報を検索したり、フィルタリングしたりすることができます。これにより、ユーザーは目的の情報をスムーズかつ簡単に見つけることができます。
また、SQLを使用することで、データを集計したり、統合したりすることもできます。これにより、ユーザーはさまざまな視点から情報を分析することができます。つまり、サイトに多くの情報を掲載することが重要である一方で、その情報を効率的かつ簡単に管理することが求められる場合には、SQLが不可欠であるといえます。
KK
機械工学を専攻。工業デザイナーとして、国内及び海外の自動車・搬送ラインの設計などに従事した後、2003年にウェブシステム会社を設立。UI設計やウェブシステムの開発、DX化のディレクションなどを行っています。