記入日: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-02-26T00:00 | 91 | 10.4 |
| 2026-02-26T01:00 | 92 | 10.1 |
| 2026-02-26T02:00 | 90 | 10.8 |
| 2026-02-26T03:00 | 87 | 11.5 |
| 2026-02-26T04:00 | 84 | 11.2 |
| 2026-02-26T05:00 | 80 | 10.9 |
| 2026-02-26T06:00 | 79 | 10.9 |
| 2026-02-26T07:00 | 81 | 11.3 |
| 2026-02-26T08:00 | 81 | 11.6 |
| 2026-02-26T09:00 | 81 | 11.2 |
| 2026-02-26T10:00 | 80 | 10.5 |
| 2026-02-26T11:00 | 78 | 10.5 |
| 2026-02-26T12:00 | 76 | 10.1 |
| 2026-02-26T13:00 | 74 | 10.1 |
| 2026-02-26T14:00 | 73 | 10.1 |
| 2026-02-26T15:00 | 72 | 9.7 |
| 2026-02-26T16:00 | 72 | 9.7 |
| 2026-02-26T17:00 | 74 | 9.7 |
| 2026-02-26T18:00 | 77 | 9.4 |
| 2026-02-26T19:00 | 79 | 9 |
| 2026-02-26T20:00 | 81 | 9 |
| 2026-02-26T21:00 | 83 | 8.7 |
| 2026-02-26T22:00 | 84 | 8.6 |
| 2026-02-26T23:00 | 84 | 8.8 |
| 2026-02-27T00:00 | 84 | 8.8 |
| 2026-02-27T01:00 | 84 | 8.5 |
| 2026-02-27T02:00 | 84 | 8 |
| 2026-02-27T03:00 | 84 | 8.1 |
| 2026-02-27T04:00 | 85 | 8 |
| 2026-02-27T05:00 | 87 | 7.3 |
| 2026-02-27T06:00 | 89 | 7 |
| 2026-02-27T07:00 | 89 | 6.4 |
| 2026-02-27T08:00 | 88 | 6.5 |
| 2026-02-27T09:00 | 85 | 6.2 |
| 2026-02-27T10:00 | 81 | 6.2 |
| 2026-02-27T11:00 | 77 | 5.4 |
| 2026-02-27T12:00 | 74 | 4.8 |
| 2026-02-27T13:00 | 72 | 4.2 |
| 2026-02-27T14:00 | 70 | 3.7 |
| 2026-02-27T15:00 | 69 | 3.1 |
| 2026-02-27T16:00 | 73 | 4.4 |
| 2026-02-27T17:00 | 78 | 4.6 |
| 2026-02-27T18:00 | 81 | 3.6 |
| 2026-02-27T19:00 | 87 | 3.8 |
| 2026-02-27T20:00 | 89 | 3.3 |
| 2026-02-27T21:00 | 91 | 3.2 |
| 2026-02-27T22:00 | 91 | 3 |
| 2026-02-27T23:00 | 93 | 2.5 |
| 2026-02-28T00:00 | 94 | 1.5 |
| 2026-02-28T01:00 | 94 | 2.9 |
| 2026-02-28T02:00 | 96 | 2.6 |
| 2026-02-28T03:00 | 97 | 2.5 |
| 2026-02-28T04:00 | 97 | 2.8 |
| 2026-02-28T05:00 | 97 | 2.6 |
| 2026-02-28T06:00 | 97 | 3.1 |
| 2026-02-28T07:00 | 96 | 2.7 |
| 2026-02-28T08:00 | 93 | 2.1 |
| 2026-02-28T09:00 | 90 | 1.8 |
| 2026-02-28T10:00 | 84 | 3.6 |
| 2026-02-28T11:00 | 75 | 5.1 |
| 2026-02-28T12:00 | 69 | 5.8 |
| 2026-02-28T13:00 | 63 | 5.3 |
| 2026-02-28T14:00 | 60 | 5.3 |
| 2026-02-28T15:00 | 54 | 5.1 |
| 2026-02-28T16:00 | 50 | 10.1 |
| 2026-02-28T17:00 | 52 | 10.8 |
| 2026-02-28T18:00 | 54 | 10.5 |
| 2026-02-28T19:00 | 55 | 9.7 |
| 2026-02-28T20:00 | 56 | 9.3 |
| 2026-02-28T21:00 | 58 | 9.8 |
| 2026-02-28T22:00 | 60 | 10.7 |
| 2026-02-28T23:00 | 61 | 10.2 |
| 2026-03-01T00:00 | 60 | 10.2 |
| 2026-03-01T01:00 | 56 | 10.3 |
| 2026-03-01T02:00 | 54 | 9.3 |
| 2026-03-01T03:00 | 52 | 7.9 |
| 2026-03-01T04:00 | 53 | 6 |
| 2026-03-01T05:00 | 58 | 3.4 |
| 2026-03-01T06:00 | 61 | 1.8 |
| 2026-03-01T07:00 | 60 | 0.4 |
| 2026-03-01T08:00 | 61 | 0.4 |
| 2026-03-01T09:00 | 46 | 2.3 |
| 2026-03-01T10:00 | 41 | 3 |
| 2026-03-01T11:00 | 36 | 4 |
| 2026-03-01T12:00 | 32 | 4.1 |
| 2026-03-01T13:00 | 28 | 1.8 |
| 2026-03-01T14:00 | 24 | 2.6 |
| 2026-03-01T15:00 | 25 | 5.4 |
| 2026-03-01T16:00 | 33 | 6.5 |
| 2026-03-01T17:00 | 46 | 6.5 |
| 2026-03-01T18:00 | 58 | 5.8 |
| 2026-03-01T19:00 | 66 | 4.3 |
| 2026-03-01T20:00 | 73 | 2.3 |
| 2026-03-01T21:00 | 79 | 1.5 |
| 2026-03-01T22:00 | 84 | 1.8 |
| 2026-03-01T23:00 | 87 | 2.3 |
| 2026-03-02T00:00 | 89 | 2.4 |
| 2026-03-02T01:00 | 87 | 3.1 |
| 2026-03-02T02:00 | 84 | 3.7 |
| 2026-03-02T03:00 | 81 | 4.2 |
| 2026-03-02T04:00 | 80 | 4.6 |
| 2026-03-02T05:00 | 80 | 4.6 |
| 2026-03-02T06:00 | 78 | 4.6 |
| 2026-03-02T07:00 | 73 | 5.2 |
| 2026-03-02T08:00 | 65 | 5.9 |
| 2026-03-02T09:00 | 58 | 5.9 |
| 2026-03-02T10:00 | 51 | 5.4 |
| 2026-03-02T11:00 | 45 | 5.2 |
| 2026-03-02T12:00 | 40 | 5 |
| 2026-03-02T13:00 | 36 | 4 |
| 2026-03-02T14:00 | 32 | 5.4 |
| 2026-03-02T15:00 | 32 | 6.8 |
| 2026-03-02T16:00 | 36 | 6.4 |
| 2026-03-02T17:00 | 43 | 4.8 |
| 2026-03-02T18:00 | 49 | 3.1 |
| 2026-03-02T19:00 | 54 | 2.3 |
| 2026-03-02T20:00 | 58 | 1.8 |
| 2026-03-02T21:00 | 62 | 2.3 |
| 2026-03-02T22:00 | 65 | 2.5 |
| 2026-03-02T23:00 | 67 | 2.7 |
| 2026-03-03T00:00 | 69 | 3.3 |
| 2026-03-03T01:00 | 70 | 4 |
| 2026-03-03T02:00 | 71 | 4.7 |
| 2026-03-03T03:00 | 71 | 5.4 |
| 2026-03-03T04:00 | 75 | 6 |
| 2026-03-03T05:00 | 77 | 7 |
| 2026-03-03T06:00 | 79 | 7.5 |
| 2026-03-03T07:00 | 81 | 7.4 |
| 2026-03-03T08:00 | 82 | 6.9 |
| 2026-03-03T09:00 | 82 | 7.1 |
| 2026-03-03T10:00 | 81 | 8 |
| 2026-03-03T11:00 | 79 | 9.4 |
| 2026-03-03T12:00 | 77 | 10.5 |
| 2026-03-03T13:00 | 77 | 10.8 |
| 2026-03-03T14:00 | 77 | 10.9 |
| 2026-03-03T15:00 | 77 | 10.9 |
| 2026-03-03T16:00 | 77 | 11.1 |
| 2026-03-03T17:00 | 77 | 11 |
| 2026-03-03T18:00 | 78 | 10.5 |
| 2026-03-03T19:00 | 80 | 10 |
| 2026-03-03T20:00 | 82 | 9.5 |
| 2026-03-03T21:00 | 84 | 9.5 |
| 2026-03-03T22:00 | 86 | 9.7 |
| 2026-03-03T23:00 | 87 | 10 |
| 2026-03-04T00:00 | 88 | 10.7 |
| 2026-03-04T01:00 | 89 | 11.2 |
| 2026-03-04T02:00 | 90 | 11.8 |
| 2026-03-04T03:00 | 90 | 12.2 |
| 2026-03-04T04:00 | 90 | 12.2 |
| 2026-03-04T05:00 | 90 | 12.2 |
| 2026-03-04T06:00 | 90 | 12.5 |
| 2026-03-04T07:00 | 90 | 13.3 |
| 2026-03-04T08:00 | 90 | 14.6 |
| 2026-03-04T09:00 | 90 | 15.4 |
| 2026-03-04T10:00 | 89 | 15.6 |
| 2026-03-04T11:00 | 88 | 15.1 |
| 2026-03-04T12:00 | 87 | 15 |
| 2026-03-04T13:00 | 86 | 15 |
| 2026-03-04T14:00 | 86 | 15 |
| 2026-03-04T15:00 | 86 | 15 |
| 2026-03-04T16:00 | 86 | 14.8 |
| 2026-03-04T17:00 | 87 | 14.6 |
| 2026-03-04T18:00 | 87 | 14.2 |
| 2026-03-04T19:00 | 87 | 14.1 |
| 2026-03-04T20:00 | 87 | 13.5 |
| 2026-03-04T21:00 | 87 | 13.4 |
| 2026-03-04T22:00 | 87 | 13.4 |
| 2026-03-04T23:00 | 88 | 13.2 |
SQLの使いどころ
サイトに大量の情報を掲載することは、ユーザーにとってとても便利なことです。しかし、情報が多すぎると、目的の情報を見つけるのが困難になります。そのため、SQLを使用することで、情報を効率的に管理することができます。
SQLを使用することで、データベース内の情報を検索したり、フィルタリングしたりすることができます。これにより、ユーザーは目的の情報をスムーズかつ簡単に見つけることができます。
また、SQLを使用することで、データを集計したり、統合したりすることもできます。これにより、ユーザーはさまざまな視点から情報を分析することができます。つまり、サイトに多くの情報を掲載することが重要である一方で、その情報を効率的かつ簡単に管理することが求められる場合には、SQLが不可欠であるといえます。
KK
機械工学を専攻。工業デザイナーとして、国内及び海外の自動車・搬送ラインの設計などに従事した後、2003年にウェブシステム会社を設立。UI設計やウェブシステムの開発、DX化のディレクションなどを行っています。