Nano Hash - криптовалюты, майнинг, программирование

MaraiDB/MySQL вставляет в таблицу из запроса выбора, но при дублировании ключа использует данные из запроса выбора

Я создал таблицу A следующим образом:

введите здесь описание изображения

Я вставил приведенные выше данные, используя простой оператор INSERT INTO и SELECT. Теперь, когда исходные данные исправлены, я хочу использовать INSERT INTO, SELECT, ON DUPLICATE KEY UPDATE, но когда я запускаю код, 0 и NULL, который вы видите выше, не обновляется до нового значения.

Вот мой код

INSERT INTO
TABLEA (uniqueid, year, month, costcentre, amount)

SELECT
  SS.uniquekey, SS.year, SS.month, SS.source, SS.totalamount
FROM
 (SELECT
    uniquekey, `YEAR`, `MONTH`, SOURCE, totalamount
  FROM
    TABLEB
  UNION ALL
  SELECT
    uniquekey, `YEAR`, `MONTH`, SOURCE, totalamount
  FROM
    TABLEC
 ) as SS
ON DUPLICATE KEY 
UPDATE
  TABLEA.YEAR = VALUES(SS.year),
  TABLEA.MONTH = VALUES(SS.month), 
  TABLEA.COSTCENTRE = VALUES(SS.SOURCE), 
  TABLEA.AMOUNT = VALUES(SS.TOTALAMOUNT)
;

Итак, ответ, который я ищу, таков:

  1. Я хочу, чтобы в TABLEA была строка для каждого UNIQUE в запросе SELECT.
  2. Если TABLEA содержит тот же UNIQUEID, что и SELECT, я хочу, чтобы он обновлял YEAR, MONTH, < strong>COSTCENTRE, AMOUNT из запроса SELECT

  • Я считаю, что это должно быть ON DUPLICATE KEY UPDATE YEAR = VALUES(YEAR) - т.е. вы должны ссылаться только на имена столбцов TABLEA 17.07.2018
  • Привет, Иво. Блестяще.. сработало. 17.07.2018
  • Отлично. Я преобразую комментарий в ответ, чтобы вы могли его принять. 17.07.2018

Ответы:


1

Превратил мой комментарий в ответ.

Я считаю, что это должно быть ON DUPLICATE KEY UPDATE YEAR = VALUES(YEAR) - т.е. вы должны ссылаться только на имена столбцов TABLEA

17.07.2018
Новые материалы

Кластеризация: более глубокий взгляд
Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

Как написать эффективное резюме
Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

Частный метод Python: улучшение инкапсуляции и безопасности
Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

Как я автоматизирую тестирование с помощью Jest
Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

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

Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..