Я работаю с MySQL более десяти лет, и я никогда не видел его; и если он поддерживает такую функцию, я вполне уверен, что это будет упомянуто в официальных документах here.
На самом деле, я не уверен, что когда-либо вспоминал о такой возможности даже в реляционной алгебре, хотя мое официальное обучение закончилось более десяти лет назад.
Как бы такая операция работала; он должен заменить AAA.ATTR_ONE на отсутствие AAA.ATTR_TWO в JOIN? или он должен быть псевдоним поля результата? или что-то другое?
Справедливо наверняка единственной альтернативой является чем-то вроде
SELECT *
FROM AAA
NATURAL JOIN (
SELECT field0 AS ATTR_ONE, field1 AS ATTR_TWO FROM BBB
) AS NEW_NAME
где field0 и field1 должны быть заменены реальными именами полей от ВВВ.
... Фактически, я начинаю искать требование книги довольно сомнительно; он предполагает порядок столбцов, который (хотя и может существовать на практике) не может считаться более сильным, чем порядок строк.
Если у BBB были атрибуты с именем (один, два), результат NEW_NAME (ATTR_ONE, ATTR_TWO) должен создать «новую» таблицу с данными таблицы и атрибутами. – zer0uno
А, так сглаживание таблицы и столбцов? Имеет ли это что-то конкретное, чтобы делать с NATURAL JOIN, или это было только ваше намеренное использование? В любом случае, после простого поиска в aliasing в MySQL в целом, похоже, что он не обеспечивает такой синтаксис. – Uueerdo
Это должно быть полезно, если таблицы не имеют общих имен атрибутов. Если у вас есть книга, вы можете найти информацию на странице. 123 – zer0uno