2016-04-06 5 views
0

Ich habe ein Problem mit meinem Bienenstock Skript.Einfügen in HIVE

Ich möchte zwei Spalten aus der gleichen Tabelle mit zwei verschiedenen Klauseln in eine neue Tabelle extrahieren. Im tut das nächste:

create database IF NOT EXISTS basedatos_financiera; 
use basedatos_financiera; 
create table IF NOT EXISTS nasdaq (fecha string,open float,high float,low float,close float,volume float,adjclose float) ROW FORMAT DELIMITED FIELDS TERMINATED BY ','; 
load data local inpath '/home/Documents/Data/nasdaq.csv' overwrite into table nasdaq; 

DROP TABLE IF EXISTS aux_nasdaq; 

create table IF NOT EXISTS aux_nasdaq (dif float,predic float); 


insert into aux_nasdaq (dif) select open from nasdaq where nasdaq.fecha >= '1971-02-08' and nasdaq.fecha <='2016-04-01'; 

insert into aux_nasdaq (predic) select close from nasdaq where nasdaq.fecha >= '1971-02-05' and nasdaq.fecha <='2016-03-31'; 

diese die neue Tabelle Doing zwei Spalten aux_nasdaq zu erzeugen, wie ich will, aber mit dem Problem der Null-Felder, so etwas wie das:

Example of the problem

Antwort

0

dies versuchen,

insert into aux_nasdaq (dif, predic) 
SELECT 
    CASE 
      WHEN nasdaq.fecha >= '1971-02-08' and nasdaq.fecha <='2016-04-01' 
       THEN open 
      ELSE NULL 
      END AS dif 
    CASE 
      WHEN nasdaq.fecha >= '1971-02-05' and nasdaq.fecha <='2016-03-31' 
       THEN close 
      ELSE NULL 
      END AS predic 
FROM nasdaq 

Zuerst versuchen Sie Abfrage auswählen, Daten richtig abrufen oder nicht verwenden dann einfügen. lassen Sie mich wissen, wenn nicht Arbeit

+0

Hallo, vielen Dank für die Antwort, ich versuche deins aber sende mir den folgenden Fehler: http://imgur.com/g8Ii0QR –

+0

versuchen Sie die aktualisierte Abfrage. Eigentlich habe ich gezählt, warum der Fehler aufgetreten ist. –