ВСТАВЬТЕ в таблицу, где бы ни было update_time - PullRequest
0 голосов
/ 11 февраля 2019

У меня есть таблица с данными о сеансе.Я хочу вставить жестко закодированные значения для каждой новой строки сеанса, добавленной в самый последний момент.

например, учитывая, что эта таблица с информацией о 3 строках сеанса добавлена ​​в

2/10/2019 17:15

table

Я хочу вставить значения server1 и business в 3 строки (строка1-3) самое позднее UDPATE_TIME, что в данном случае

2/10/2019 17:15

Я использую этот запрос, чтобы получитьвремя последнего обновления:

$update_time = query "SELECT FORMAT(MAX([UPDATE_TIME]), 'M/d/yyyy h:mm tt') AS UPDATE_TIME FROM table"| Select -ExpandProperty UPDATE_TIME;

, и я использую этот запрос на вставку для вставки значений:

query "INSERT INTO table (SERVERNAME, Business_Name) VALUES ('server1', 'business')"

, однако, как вы можете видеть его вставку в новую строку (row4), ивместо этого я хочу вставить в строки, которые уже есть 1-3, так, чтобы это стало так:

desired table

псевдокод запроса яищу:

query "INSERT INTO table (SERVERNAME, Business_Name) VALUES ('server1', 'business') wherever $update_time

1 Ответ

0 голосов
/ 11 февраля 2019

Я думаю, вы хотите обновить.Примерно так:

update [table]
    set business_name = @business_name
    where update_time = (select max(t2.update_time) from [table] t2);

Обновление после вставок кажется опасным - разные потоки могут вставлять данные одновременно.Однако это отвечает на вопрос, который вы задали.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...