PostgreSQL 10. Как удалить потерянные строки в таблице A только для идентификаторов, существующих в таблице B?

вы можете просто объявить переменную вне внешнего класса. После этого вы сможете редактировать переменную из внутреннего класса. Иногда я сталкиваюсь с аналогичными проблемами при кодировании в android, поэтому объявляю переменную глобальной, и она работает для меня.

1
задан sojim2 1 March 2019 в 07:45
поделиться

1 ответ

Вы, кажется, хотите этого:

DELETE from tableA
 USING tableB
 WHERE 
   -- ignore rows with IDs that don't exist in tableB
   tableA.ID = tableB.ID
   -- ignore rows that have an exact all-column match in tableB
   AND NOT EXISTS (select * from tableB where tableB.* is not distinct from tableA.*);

is not distinct from немного похож на «равно» (оператор =), за исключением того, что это также верно, когда сравниваемые столбцы равны NULL, тогда как [113 ] является нулем, не соответствует действительности. Это относится, по крайней мере, к вашему столбцу category, который обнуляется в данных выборки.

0
ответ дан Daniel Vérité 1 March 2019 в 07:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: