-- DBMS: bigquery
CREATE TABLE `bigquery-public-data.noaa_gsod.gsod1987`
(
  stn STRING OPTIONS(description="Station number (WMO/DATSAV3 number) for the location"),
  wban STRING OPTIONS(description="WBAN number where applicable--this is the historical \"Weather Bureau Air Force Navy\" number - with WBAN being the acronym"),
  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.\n* 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.\n* 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. \n.00 indicates no measurable precipitation (includes a trace).\nMissing = 99.99\nNote: 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\nB = Summation of 2 reports of 6-hour precipitation amount\nC = Summation of 3 reports of 6-hour precipitation amount\nD = Summation of 4 reports of 6-hour precipitation amount\nE = 1 report of 12-hour precipitation amount\nF = Summation of 2 reports of 12-hour precipitation amount\nG = 1 report of 24-hour precipitation amount\nH = 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.\nI = 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\nNote: 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")
)
OPTIONS(
  description="Global summary of day data for 18 surface meteorological elements are derived from the synoptic/hourly observations"
);

INSERT INTO `bigquery-public-data.noaa_gsod.gsod1987` (stn, wban, 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 ('346350', '99999', '1987', '01', '18', 13.4, 4, 9999.9, 0, 1038.9, 4, 9999.9, 0, 999.9, 0, '999.9', '0', '999.9', 999.9, 15.8, '*', 10.8, NULL, 99.99, NULL, 16.5, '0', '0', '1', '0', '0', '0'), ('418830', '99999', '1987', '07', '31', 78.5, 4, 9999.9, 0, 998.9, 4, 9999.9, 0, 999.9, 0, '3.8', '4', '5.1', 999.9, 80.6, NULL, 76.1, NULL, 99.99, NULL, 999.9, '0', '1', '0', '0', '0', '0'), ('154630', '99999', '1987', '08', '17', 67.5, 4, 9999.9, 0, 9999.9, 0, 9999.9, 0, 999.9, 0, '999.9', '0', '999.9', 999.9, 70.9, '*', 54.0, NULL, 0.0, 'A', 999.9, '0', '0', '0', '0', '0', '0'), ('152210', '99999', '1987', '07', '07', 56.7, 4, 9999.9, 0, 9999.9, 0, 9999.9, 0, 999.9, 0, '999.9', '0', '999.9', 999.9, 60.8, '*', 53.1, NULL, 0.0, 'A', 999.9, '0', '0', '0', '0', '0', '0'), ('153160', '99999', '1987', '08', '18', 44.7, 4, 9999.9, 0, 9999.9, 0, 9999.9, 0, 999.9, 0, '999.9', '0', '999.9', 999.9, 45.5, '*', 42.6, NULL, 0.0, 'A', 999.9, '0', '0', '0', '0', '0', '0');