PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Намерете идентификатор на родител, когато всички деца споделят една и съща стойност

Опитайте следната логика по-долу-

ДЕМО ТУК

SELECT ID FROM C
WHERE ID NOT IN
(
    SELECT C.ID
    FROM C
    INNER JOIN F ON C.id = F.parent_id
    INNER JOIN oui ON F.ID = Oui.rel_id
    WHERE C.ID = CAST(oui.Product_Version AS INT)
    -- by default your column "Product Version" should be INT in table oui
)

Проблемът, който споменахте в коментара по-долу, можете да опитате това обратно преобразуване, както е показано по-долу-

SELECT ID FROM C
WHERE ID NOT IN
(
    SELECT C.ID
    FROM C
    INNER JOIN F ON C.id = F.parent_id
    INNER JOIN oui ON F.ID = Oui.rel_id
    WHERE CAST(C.ID AS VARCHAR) = oui.Product_Version
)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Граници на производителност на решенията за логическа репликация

  2. Postgres вмъква ред само ако броят на редовете е под лимит

  3. създайте таблица в postgreSQL

  4. PostgreSQL:.psql_history към /dev/null

  5. bundle exec rake assets:precompile - конфигурацията на базата данни не указва адаптер