Обновление Oracle SQL на основе подзапроса между двумя таблицами

В настоящее время я пишу операторы обновления, чтобы постоянно обновлять таблицу запросов -. Схема обеих таблиц идентична, и содержимое не важно :

STAGING  

ID  
NAME  
COUNT    

PRODUCTION  

ID  
NAME  
COUNT

. Мой оператор обновления выглядит следующим образом:

update PRODUCTION  
set name = (select stage.name from staging stage where stage.name=name  and rownum <2),  
    count =   (select stage.countfrom staging stage where stage.count=count  and rownum <2);

Следует отметить две вещи: 1 )В конце моего обновления нет пункта where (это может быть проблемой )и 2 )все записи после обновления имеют одинаковые значения. Под этим я подразумеваю следующее:

BEFORE UPDATE:  

1,"JOHN", 12;  
2,"STEVE",15;  
3,"BETTY",2;  

AFTER UPDATE  

    1,"JOHN", 12;  
    2,"JOHN",12;  
    3,"JOHN",12;

Мой вопрос: как мне исправить это, чтобы таблица правильно отражала «новые» данные из промежуточной стадии как правильное обновление SQL?

ОБНОВЛЕНИЕ

Таким образом, мои промежуточные данные могут случайно отражать то, что находится в PRODUCTION, и ради обсуждения это будет:

STAGING DATA TO MERGE:  

    1,"JOHN", 12;  
    2,"STEVE",15;  
    3,"BETTY",2; 

ОБНОВЛЕНИЕ второе

Запрос, который я хотел бы выполнить, будет следующим:

update PRODUCTION
set production.name = staging.name,  
    production.count = staging.count

where production.name = staging.name;

Однако это приводит к проблемам с недопустимым идентификатором в «staging.name»

-. 121 ---1149729- Линейный градиент в браузерах Chrome и Safari У меня возникли проблемы с отображением линейного градиента в Safari и Chrome. В файрфоксе нормально отображается. Я пытаюсь :фон:-webkit -linear -градиент (center top, #9E9E9E, #454545 )Repeat Scroll 0 0...

У меня возникли проблемы с отображением линейного градиента в Safari и Chrome. В файрфоксе нормально отображается.

я пытаюсь:

background: -webkit-linear-gradient(center top, #9E9E9E, #454545) repeat scroll 0 0 transparent;   
background:    -moz-linear-gradient(center top, #9E9E9E, #454545) repeat scroll 0 0 transparent;
background:     -ms-linear-gradient(center top, #9E9E9E, #454545) repeat scroll 0 0 transparent;
background:      -o-linear-gradient(center top, #9E9E9E, #454545) repeat scroll 0 0 transparent;

Спасибо за вашу помощь.

14
задан Francisco Corrales Morales 28 March 2014 в 22:55
поделиться