-- DBMS: bigquery
CREATE TABLE `bigquery-public-data.noaa_gsod.gsod2023`
(
  stn STRING OPTIONS(description="Cloud - GSOD NOAA"),
  wban STRING OPTIONS(description="WBAN number where applicable--this is the historical \"Weather Bureau Air Force Navy\" number - with WBAN being the acronym"),
  date DATE OPTIONS(description="Date of the weather observations"),
  year STRING OPTIONS(description="The year"),
  mo STRING OPTIONS(description="The month"),
  da STRING OPTIONS(description="The day"),
  temp FLOAT64 OPTIONS(description="Mean temperature for the day in degrees Fahrenheit to tenths. Missing = 9999.9"),
  count_temp INT64 OPTIONS(description="Number of observations used in calculating mean temperature"),
  dewp FLOAT64 OPTIONS(description="Mean dew point for the day in degreesm Fahrenheit to tenths.  Missing = 9999.9"),
  count_dewp INT64 OPTIONS(description="Number of observations used in calculating mean dew point"),
  slp FLOAT64 OPTIONS(description="Mean sea level pressure for the day in millibars to tenths. Missing = 9999.9"),
  count_slp INT64 OPTIONS(description="Number of observations used in calculating mean sea level pressure"),
  stp FLOAT64 OPTIONS(description="Mean station pressure for the day in millibars to tenths. Missing = 9999.9"),
  count_stp INT64 OPTIONS(description="Number of observations used in calculating mean station pressure"),
  visib FLOAT64 OPTIONS(description="Mean visibility for the day in miles to tenths.  Missing = 999.9"),
  count_visib INT64 OPTIONS(description="Number of observations used in calculating mean visibility"),
  wdsp STRING OPTIONS(description="Mean wind speed for the day in knots to tenths. Missing = 999.9"),
  count_wdsp STRING OPTIONS(description="Number of observations used in calculating mean wind speed"),
  mxpsd STRING OPTIONS(description="Maximum sustained wind speed reported for the day in knots to tenths. Missing = 999.9"),
  gust FLOAT64 OPTIONS(description="Maximum wind gust reported for the day in knots to tenths. Missing = 999.9"),
  max FLOAT64 OPTIONS(description="Maximum temperature reported during the day in Fahrenheit to tenths--time of max temp report varies by country and region, so this will sometimes not be the max for the calendar day. Missing = 9999.9"),
  flag_max STRING OPTIONS(description="Blank indicates max temp was taken from the explicit max temp report and not from the 'hourly' data. * indicates max temp was  derived from the hourly data (i.e., highest hourly or synoptic-reported temperature)"),
  min FLOAT64 OPTIONS(description="Minimum temperature reported during the day in Fahrenheit to tenths--time of min temp report varies by country and region, so this will sometimes not be the min for the calendar day. Missing = 9999.9"),
  flag_min STRING OPTIONS(description="Blank indicates min temp was taken from the explicit min temp report and not from the 'hourly' data. * indicates min temp was derived from the hourly data (i.e., lowest hourly or synoptic-reported temperature)"),
  prcp FLOAT64 OPTIONS(description="Total precipitation (rain and/or melted snow) reported during the day in inches and hundredths; will usually not end with the midnight observation--i.e., may include latter part of previous day.  .00 indicates no measurable precipitation (includes a trace). Missing = 99.99 Note: Many stations do not report '0' on days with no precipitation--therefore, '99.99' will often appear on these days. Also, for example, a station may only report a 6-hour amount for the period during which rain fell. See Flag field for source of data"),
  flag_prcp STRING OPTIONS(description="A = 1 report of 6-hour precipitation amount B = Summation of 2 reports of 6-hour precipitation amount C = Summation of 3 reports of 6-hour precipitation amount D = Summation of 4 reports of 6-hour precipitation amount E = 1 report of 12-hour precipitation amount F = Summation of 2 reports of 12-hour precipitation amount G = 1 report of 24-hour precipitation amount H = Station reported '0' as the amount for the day (eg, from 6-hour reports), but also reported at least one occurrence of precipitation in hourly observations--this could indicate a trace occurred, but should be considered as incomplete data for the day. I = Station did not report any precip data for the day and did not report any occurrences of precipitation in its hourly observations--it's still possible that precip occurred but was not reported"),
  sndp FLOAT64 OPTIONS(description="Snow depth in inches to tenths--last report for the day if reported more thanonce. Missing = 999.9 Note: Most stations do not report '0' ondays with no snow on the ground--therefore, '999.9' will often appear on these days"),
  fog STRING OPTIONS(description="Indicators (1 = yes, 0 = no/not reported) for the occurrence during the day"),
  rain_drizzle STRING OPTIONS(description="Indicators (1 = yes, 0 = no/not reported) for the occurrence during the day"),
  snow_ice_pellets STRING OPTIONS(description="Indicators (1 = yes, 0 = no/not reported) for the occurrence during the day"),
  hail STRING OPTIONS(description="Indicators (1 = yes, 0 = no/not reported) for the occurrence during the day"),
  thunder STRING OPTIONS(description="Indicators (1 = yes, 0 = no/not reported) for the occurrence during the day"),
  tornado_funnel_cloud STRING OPTIONS(description="Indicators (1 = yes, 0 = no/not reported) for the occurrence during the day")
);

INSERT INTO `bigquery-public-data.noaa_gsod.gsod2023` (stn, wban, date, year, mo, da, temp, count_temp, dewp, count_dewp, slp, count_slp, stp, count_stp, visib, count_visib, wdsp, count_wdsp, mxpsd, gust, max, flag_max, min, flag_min, prcp, flag_prcp, sndp, fog, rain_drizzle, snow_ice_pellets, hail, thunder, tornado_funnel_cloud) VALUES ('010020', '99999', '2023-11-27', '2023', '11', '27', 35.4, 4, 27.0, 4, 1010.2, 4, 9.0, 4, 999.9, 0, '17.0', '4', '23.3', 999.9, 38.7, NULL, 31.3, NULL, 0.0, 'I', 999.9, '0', '0', '0', '0', '0', '0'), ('010030', '99999', '2023-01-12', '2023', '01', '12', 33.5, 4, 25.7, 4, 988.2, 4, 986.8, 4, 999.9, 0, '12.7', '4', '17.9', 24.3, 34.2, NULL, 30.4, NULL, 99.99, NULL, 999.9, '0', '0', '1', '0', '0', '0'), ('010030', '99999', '2023-10-11', '2023', '10', '11', 27.3, 4, 17.8, 4, 1006.7, 4, 5.3, 4, 999.9, 0, '18.2', '4', '23.3', 39.2, 28.4, NULL, 25.9, NULL, 99.99, NULL, 999.9, '0', '0', '1', '0', '0', '0'), ('010060', '99999', '2023-11-22', '2023', '11', '22', 32.4, 4, 27.3, 4, 987.7, 4, 986.2, 4, 999.9, 0, '28.2', '4', '31.1', 33.0, 34.7, NULL, 31.3, NULL, 0.0, 'I', 999.9, '0', '0', '0', '0', '0', '0'), ('010060', '99999', '2023-10-25', '2023', '10', '25', 23.4, 4, 9999.9, 0, 1018.8, 4, 17.2, 4, 999.9, 0, '5.0', '4', '9.7', 999.9, 25.3, NULL, 21.6, NULL, 0.0, 'I', 999.9, '0', '0', '0', '0', '0', '0');