2017-04-05 267 views
0

我有兩個表 「aux1.txt」SQL:刪除空字符串

CREATE TABLE aux1 
    ( 
    "date/time"   DATE, 
    year     INTEGER, 
    month     INTEGER, 
    day     INTEGER, 
    "data quality"   TEXT, 
    "max temp"    REAL, 
    "max temp flag"  TEXT, 
    "min temp"    REAL, 
    "min temp flag"  TEXT, 
    "mean temp"   REAL, 
    "mean temp flag"  TEXT, 
    "heat deg days"  REAL, 
    "heat deg days flag" TEXT, 
    "cool deg days"  REAL, 
    "cool deg days flag" TEXT, 
    "total rain"   REAL, 
    "total rain flag"  TEXT, 
    "total snow"   REAL, 
    "total snow flag"  TEXT, 
    "total precip"   REAL, 
    "total precip flag" TEXT, 
    "snow on grnd"   REAL, 
    "snow on grnd flag" TEXT, 
    "dir of max gust"  REAL, 
    "dir of max gust flag" TEXT, 
    "spd of max gust"  REAL, 
    "spd of max gust flag" TEXT 
); 

與歷史氣象數據和另一個名爲 「weather.txt的」

CREATE TABLE weather 
    ( 
    year   INTEGER, 
    month   INTEGER, 
    day   INTEGER, 
    "max temp"  REAL, 
    "min temp"  REAL, 
    "mean temp" REAL, 
    "total precip" REAL 
); 

用那些列。我只想在最大溫度,最小溫度,平均溫度,總Precip字段都不爲空的情況下,將aux1中的所有相關列插入天氣。到目前爲止,我已經有了:

INSERT INTO weather 
SELECT "max temp"  REAL, 
     "min temp"  REAL, 
     "total precip" REAL 
FROM aux1 
WHERE "max temp" IS NOT NULL 
     AND "max temp" <> "" 

,儘管它好像這個工程的「最高溫度」我不知道如何繼續這樣做語法明智的所有其他人。任何方向感謝!

感謝

+0

如果'「ma x temp「'是一個'REAL',它將如何成爲''」'? – vol7ron

回答

0

爲什麼不乾脆:

... and "Min Temp" is not null and "Min Temp" <> "" ... etc. 
0
INSERT INTO weather 
SELECT "max temp"  REAL, 
     "min temp"  REAL, 
     "total precip" REAL 
FROM aux1 
WHERE "max temp"  IS NOT NULL AND 
     "min temp"  IS NOT NULL AND 
     "total precip" IS NOT NULL 
  • REAL不是字符串,所以沒有理由去檢查field <> ""
  • 然後,只需確保您的其他領域也沒有null