Внешнее соединение между двумя таблицами базы данных
возвращает таблицу, следующую из внешнего соединения между левыми и правыми таблицами базы данных. Эта функция совпадает со строками с помощью всех разделяемых столбцов или ключей, в обеих таблицах базы данных. Внешнее соединение сохраняет совпадающие и несопоставленные строки между этими двумя таблицами. Выполнение этой функции является эквивалентом записи SQL-оператора data
= sqlouterjoin(conn
,lefttable
,righttable
)SELECT * FROM lefttable,righttable OUTER JOIN lefttable.key = righttable.key
.
дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Например, data
= sqlouterjoin(conn
,lefttable
,righttable
,Name,Value
)'Keys','productNumber'
задает использование productNumber
столбец как ключ для присоединения этих двух таблиц базы данных.
Используйте связь ODBC, чтобы импортировать данные о продукте от внешнего соединения между двумя таблицами базы данных Microsoft® SQL Server® в MATLAB®.
Создайте соединение с базой данных ODBC к базе данных Microsoft SQL Server с аутентификацией Windows®. Задайте пустое имя пользователя и пароль. База данных содержит таблицы productTable
и suppliers
.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Проверяйте соединение с базой данных. Если Message
свойство пусто, затем связь успешна.
conn.Message
ans = []
Соедините две таблицы базы данных, productTable
и suppliers
. productTable
таблица является столом, из-за которого встают, соединения и suppliers
таблица является правильной таблицей соединения. sqlouterjoin
функция автоматически обнаруживает разделяемый столбец между таблицами.
data
таблица, которая содержит совпадающие и несопоставленные строки из этих двух таблиц.
lefttable = 'productTable'; righttable = 'suppliers'; data = sqlouterjoin(conn,lefttable,righttable);
Отобразите первые три строки данных, к которым соединяют. Столбцы из правильной таблицы появляются справа от столбцов из вставшего стола.
head(data,3)
ans = 3×10 table productNumber stockNumber supplierNumber unitCost productDescription SupplierNumber SupplierName City Country FaxNumber _____________ ___________ ______________ ________ __________________ ______________ _________________ __________ ________________ ______________ 1 4.0035e+05 1001 14 'Building Blocks' 1001 'Wonder Products' 'New York' 'United States' '212 435 1617' 2 4.0031e+05 1002 9 'Painting Set' 1002 'Terrific Toys' 'London' 'United Kingdom' '44 456 9345' 3 4.01e+05 1009 17 'Slinky' 1009 'Doll's Galore' 'London' 'United Kingdom' '44 222 2397'
Закройте соединение с базой данных.
close(conn)
Используйте связь ODBC, чтобы импортировать данные о продукте от внешнего соединения между двумя таблицами базы данных Microsoft® SQL Server® в MATLAB®. Задайте каталог базы данных и схему, где таблицы хранятся.
Создайте соединение с базой данных ODBC к базе данных Microsoft SQL Server с аутентификацией Windows®. Задайте пустое имя пользователя и пароль. База данных содержит таблицы productTable
и suppliers
.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Проверяйте соединение с базой данных. Если Message
свойство пусто, затем связь успешна.
conn.Message
ans = []
Соедините две таблицы базы данных, productTable
и suppliers
. productTable
таблица является столом, из-за которого встают, соединения и suppliers
таблица является правильной таблицей соединения. sqlouterjoin
функция автоматически обнаруживает разделяемый столбец между таблицами. Задайте toy_store
каталог и dbo
схема для обоих левые и правые таблицы. Используйте 'LeftCatalog'
и 'LeftSchema'
аргументы пары "имя-значение" для стола, из-за которого встают и 'RightCatalog'
и 'RightSchema'
аргументы пары "имя-значение" для правильной таблицы.
data
таблица, которая содержит совпадающие и несопоставленные строки из этих двух таблиц.
lefttable = 'productTable'; righttable = 'suppliers'; data = sqlouterjoin(conn,lefttable,righttable,'LeftCatalog','toy_store', ... 'LeftSchema','dbo','RightCatalog','toy_store','RightSchema','dbo');
Отобразите первые три строки данных, к которым соединяют. Столбцы из правильной таблицы появляются справа от столбцов из вставшего стола.
head(data,3)
ans = 3×10 table productNumber stockNumber supplierNumber unitCost productDescription SupplierNumber SupplierName City Country FaxNumber _____________ ___________ ______________ ________ __________________ ______________ _________________ __________ ________________ ______________ 1 4.0035e+05 1001 14 'Building Blocks' 1001 'Wonder Products' 'New York' 'United States' '212 435 1617' 2 4.0031e+05 1002 9 'Painting Set' 1002 'Terrific Toys' 'London' 'United Kingdom' '44 456 9345' 3 4.01e+05 1009 17 'Slinky' 1009 'Doll's Galore' 'London' 'United Kingdom' '44 222 2397'
Закройте соединение с базой данных.
close(conn)
Используйте связь ODBC, чтобы импортировать данные о продукте, к которым соединяют, от двух таблиц базы данных Microsoft® SQL Server® в MATLAB®. Задайте ключ, чтобы использовать в присоединении таблиц.
Создайте соединение с базой данных ODBC к базе данных Microsoft SQL Server с аутентификацией Windows®. Задайте пустое имя пользователя и пароль. База данных содержит таблицы productTable
и suppliers
.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Проверяйте соединение с базой данных. Если Message
свойство пусто, затем связь успешна.
conn.Message
ans = []
Соедините две таблицы базы данных, productTable
и suppliers
. productTable
таблица является столом, из-за которого встают, соединения и suppliers
таблица является правильной таблицей соединения. Задайте ключ или совместно использованный столбец, между таблицами с помощью 'Keys'
аргумент пары "имя-значение".
data
таблица, которая содержит совпадающие и несопоставленные строки из этих двух таблиц.
lefttable = 'productTable'; righttable = 'suppliers'; data = sqlouterjoin(conn,lefttable,righttable,'Keys','supplierNumber');
Отобразите первые три строки данных, к которым соединяют. Столбцы из правильной таблицы появляются справа от столбцов из вставшего стола.
head(data,3)
ans = 3×10 table productNumber stockNumber supplierNumber unitCost productDescription SupplierNumber SupplierName City Country FaxNumber _____________ ___________ ______________ ________ __________________ ______________ _________________ __________ ________________ ______________ 1 4.0035e+05 1001 14 'Building Blocks' 1001 'Wonder Products' 'New York' 'United States' '212 435 1617' 2 4.0031e+05 1002 9 'Painting Set' 1002 'Terrific Toys' 'London' 'United Kingdom' '44 456 9345' 3 4.01e+05 1009 17 'Slinky' 1009 'Doll's Galore' 'London' 'United Kingdom' '44 222 2397'
Закройте соединение с базой данных.
close(conn)
Используйте связь ODBC, чтобы импортировать данные сотрудника от внешнего соединения между двумя таблицами базы данных Microsoft® SQL Server® в MATLAB®. Задайте левые и правые ключи для соединения.
Создайте соединение с базой данных ODBC к базе данных Microsoft SQL Server с аутентификацией Windows®. Задайте пустое имя пользователя и пароль. База данных содержит таблицы employees
и departments
.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Проверяйте соединение с базой данных. Если Message
свойство пусто, затем связь успешна.
conn.Message
ans = []
Соедините две таблицы базы данных, employees
и departments
, найти менеджеров конкретных отделов. employees
таблица является столом, из-за которого встают, соединения и departments
таблица является правильной таблицей соединения. Здесь, имена столбцов ключей отличаются. Задайте MANAGER_ID
введите вставший стол с помощью 'LeftKeys'
аргумент пары "имя-значение". Задайте DEPT_MANAGER_ID
введите правильную таблицу с помощью 'RightKeys'
аргумент пары "имя-значение".
data
таблица, которая содержит совпадающие и несопоставленные строки из этих двух таблиц.
lefttable = 'employees'; righttable = 'departments'; data = sqlouterjoin(conn,lefttable,righttable,'LeftKeys','MANAGER_ID', ... 'RightKeys','DEPT_MANAGER_ID');
Отобразите последние три несопоставленных строки данных, к которым соединяют. Отобразите последние пять переменных данных, к которым соединяют.
tail(data(:,end-4:end),3)
ans = 3×5 table DEPARTMENT_ID DEPARTMENT_ID_1 DEPARTMENT_NAME DEPT_MANAGER_ID LOCATION_ID _____________ _______________ _________________ _______________ ___________ NaN 230 'IT Helpdesk' NaN 1700 NaN 40 'Human Resources' 203 2400 NaN 10 'Administration' 200 1700
Закройте соединение с базой данных.
close(conn)
Используйте связь ODBC, чтобы импортировать данные сотрудника, к которым соединяют, от двух таблиц базы данных Microsoft® SQL Server® в MATLAB®. Создайте правильное соединение и задайте левые и правые ключи для соединения.
Создайте соединение с базой данных ODBC к базе данных Microsoft SQL Server с аутентификацией Windows®. Задайте пустое имя пользователя и пароль. База данных содержит таблицы employees
и departments
.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Проверяйте соединение с базой данных. Если Message
свойство пусто, затем связь успешна.
conn.Message
ans = []
Соедините две таблицы базы данных, employees
и departments
, найти менеджеров конкретных отделов. employees
таблица является столом, из-за которого встают, соединения и departments
таблица является правильной таблицей соединения. Здесь, имена столбцов ключей отличаются. Задайте MANAGER_ID
введите вставший стол с помощью 'LeftKeys'
аргумент пары "имя-значение". Задайте DEPT_MANAGER_ID
введите правильную таблицу с помощью 'RightKeys'
аргумент пары "имя-значение". Создайте правильное соединение с помощью 'Type'
аргумент пары "имя-значение".
lefttable = 'employees'; righttable = 'departments'; data = sqlouterjoin(conn,lefttable,righttable,'LeftKeys','MANAGER_ID', ... 'RightKeys','DEPT_MANAGER_ID','Type','right');
data
таблица, которая содержит совпадающие строки из этих двух таблиц и несопоставленные строки из правильной таблицы только.
Отобразите последние три несопоставленных строки данных, к которым соединяют. Отобразите последние пять переменных данных, к которым соединяют.
tail(data(:,end-4:end),3)
ans = 3×5 table DEPARTMENT_ID DEPARTMENT_ID_1 DEPARTMENT_NAME DEPT_MANAGER_ID LOCATION_ID _____________ _______________ _______________ _______________ ___________ NaN 250 'Retail Sales' NaN 1700 NaN 260 'Recruiting' NaN 1700 NaN 270 'Payroll' NaN 1700
Закройте соединение с базой данных.
close(conn)
Используйте связь ODBC, чтобы импортировать данные о продукте, к которым соединяют, от двух таблиц базы данных Microsoft® SQL Server® в MATLAB®. Задайте количество строк, чтобы возвратиться.
Создайте соединение с базой данных ODBC к базе данных Microsoft SQL Server с аутентификацией Windows®. Задайте пустое имя пользователя и пароль. База данных содержит таблицы productTable
и suppliers
.
datasource = 'MS SQL Server Auth'; conn = database(datasource,'','');
Проверяйте соединение с базой данных. Если Message
свойство пусто, затем связь успешна.
conn.Message
ans = []
Соедините две таблицы базы данных, productTable
и suppliers
. productTable
таблица является столом, из-за которого встают, соединения и suppliers
таблица является правильной таблицей соединения. sqlouterjoin
функция автоматически обнаруживает разделяемый столбец между таблицами. Задайте количество строк, чтобы возвратить использование 'MaxRows'
аргумент пары "имя-значение".
lefttable = 'productTable'; righttable = 'suppliers'; data = sqlouterjoin(conn,lefttable,righttable,'MaxRows',3)
data = 3×10 table productNumber stockNumber supplierNumber unitCost productDescription SupplierNumber SupplierName City Country FaxNumber _____________ ___________ ______________ ________ __________________ ______________ _____________________________ ___________ _______________ _______________ 7 3.8912e+05 1007 16 'Engine Kit' 1007 'Garvin's Electrical Gizmos' 'Wellesley' 'United States' '617 919 3456' 8 2.1257e+05 1001 5 'Train Set' 1001 'Wonder Products' 'New York' 'United States' '212 435 1617' 9 1.2597e+05 1003 13 'Victorian Doll' 1003 'Wacky Widgets' 'Adelaide' 'Australia' '618 8490 2211'
data
таблица, которая содержит три из совпадающих и несопоставленных строк из этих двух таблиц. Столбцы из правильной таблицы появляются справа от столбцов из вставшего стола.
Закройте соединение с базой данных.
close(conn)
conn
— Соединение с базой данныхconnection
объектСоединение с базой данных в виде connection
объект создается с database
функция.
lefttable
— Стол, из-за которого встают,Стол, из-за которого встают, в виде вектора символов или строкового скаляра. Задайте имя таблицы базы данных на левой стороне соединения.
Пример: 'inventoryTable'
Типы данных: char |
string
righttable
— Правильная таблицаПравильная таблица в виде вектора символов или строкового скаляра. Задайте имя таблицы базы данных на правой стороне соединения.
Пример: 'productTable'
Типы данных: char |
string
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
data = sqlouterjoin(conn,lefttable,righttable,'Type','left','MaxRows',5)
выполняет внешнее левое соединение между левыми и правыми таблицами и возвращает пять строк данных, к которым соединяют.'LeftCatalog'
— Оставленный каталогОставленный каталог в виде разделенной запятой пары, состоящей из 'LeftCatalog'
и вектор символов или строковый скаляр. Задайте имя каталога базы данных, где стол, из-за которого встают, соединения хранится.
Пример: 'LeftCatalog','toy_store'
Типы данных: char |
string
'RightCatalog'
— Правильный каталогПравильный каталог в виде разделенной запятой пары, состоящей из 'RightCatalog'
и вектор символов или строковый скаляр. Задайте имя каталога базы данных, где правильная таблица соединения хранится.
Пример: 'RightCatalog','toy_store'
Типы данных: char |
string
'LeftSchema'
— Оставленная схемаОставленная схема в виде разделенной запятой пары, состоящей из 'LeftSchema'
и вектор символов или строковый скаляр. Задайте имя схемы базы данных, где стол, из-за которого встают, соединения хранится.
Пример: 'LeftSchema','dbo'
Типы данных: char |
string
'RightSchema'
— Правильная схемаПравильная схема в виде разделенной запятой пары, состоящей из 'RightSchema'
и вектор символов или строковый скаляр. Задайте имя схемы базы данных, где правильная таблица соединения хранится.
Пример: 'RightSchema','dbo'
Типы данных: char |
string
'Keys'
ключиКлючи в виде разделенной запятой пары, состоящей из 'Keys'
и вектор символов, строковый скаляр, массив ячеек из символьных векторов или массив строк. Задайте вектор символов или строковый скаляр, чтобы указать на один ключ. Для нескольких ключей задайте массив ячеек из символьных векторов или массив строк. Используйте этот аргумент пары "имя-значение", чтобы идентифицировать разделяемые ключи между этими двумя таблицами, чтобы присоединиться.
Вы не можете использовать этот аргумент пары "имя-значение" с 'LeftKeys'
и 'RightKeys'
аргументы в виде пар имя-значение.
Пример: 'Keys','MANAGER_ID'
Типы данных: char |
string
| cell
'LeftKeys'
'LeftKeys' Оставленные ключи в виде разделенной запятой пары, состоящей из 'LeftKeys'
и вектор символов, строковый скаляр, массив ячеек из символьных векторов или массив строк. Задайте вектор символов или строковый скаляр, чтобы указать на один ключ. Для нескольких ключей задайте массив ячеек из символьных векторов или массив строк. Этот аргумент пары "имя-значение" идентифицирует ключи в столе, из-за которого встают, для соединения к правильной таблице.
Используйте этот аргумент пары "имя-значение" с 'RightKeys'
аргумент пары "имя-значение". Оба аргумента должны задать то же количество ключей. sqlouterjoin
функциональные пары значения ключей на основе их порядка.
Пример: 'LeftKeys',["productNumber" "Price"]
Типы данных: char |
string
| cell
'RightKeys'
'RightKeys' Правильные ключи в виде разделенной запятой пары, состоящей из 'RightKeys'
и вектор символов, строковый скаляр, массив ячеек из символьных векторов или массив строк. Задайте вектор символов или строковый скаляр, чтобы указать на один ключ. Для нескольких ключей задайте массив ячеек из символьных векторов или массив строк. Этот аргумент пары "имя-значение" идентифицирует ключи в правильной таблице для соединения к вставшему столу.
Используйте этот аргумент пары "имя-значение" с 'LeftKeys'
аргумент пары "имя-значение". Оба аргумента должны задать то же количество ключей. sqlouterjoin
функциональные пары значения ключей на основе их порядка.
Пример: 'RightKeys',["productNumber" "Price"]
Типы данных: char |
string
| cell
'MaxRows'
— Максимальное количество строк, чтобы возвратитьсяМаксимальное количество строк, чтобы возвратиться в виде разделенной запятой пары, состоящей из 'MaxRows'
и положительный числовой скаляр. По умолчанию, sqlouterjoin
функция возвращает все строки в выполняемый SQL-запрос. Используйте этот аргумент пары "имя-значение", чтобы ограничить количество строк, импортированных в MATLAB®.
Пример: 'MaxRows',10
Типы данных: double
'Type'
— Тип внешнего соединения'full'
(значение по умолчанию) | 'left'
| 'right'
Тип внешнего соединения в виде разделенной запятой пары, состоящей из 'Type'
и одно из этих значений:
'full'
— Полное соединение получает записи, которые имеют совпадающие значения в выбранном столбце обеих таблиц и несопоставленные записи от обоих левые и правые таблицы.
'left'
— Левое соединение получает записи, которые имеют совпадающие значения в выбранном столбце обеих таблиц и несопоставленные записи из вставшего стола только.
'right'
— Правильное соединение получает записи, которые имеют совпадающие значения в выбранном столбце обеих таблиц и несопоставленные записи из правильной таблицы только.
Можно задать эти значения как вектор символов или строковый скаляр.
Не все базы данных поддерживают все типы соединения. Для неподдерживаемой базы данных необходимо использовать sqlread
функция, чтобы импортировать данные из обеих таблиц в MATLAB. Затем используйте sqlouterjoin
функционируйте к объединяющим таблицам в рабочем пространстве MATLAB.
Пример: 'Type','left'
data
— Данные, к которым соединяют,Данные, к которым соединяют, возвращенные как таблица, которая содержит строки, соответствующие ключами в левых и правых таблицах базы данных и сохраненных несопоставленных строках. data
также содержит переменную для каждого столбца в левых и правых таблицах.
По умолчанию типами данных переменных является double
для столбцов, которые имеют numeric
типы данных в таблице базы данных. Для любого текста, date
Время
, или timestamp
типы данных в таблице базы данных, типы данных переменных являются массивом ячеек из символьных векторов по умолчанию.
Если имена столбцов совместно используются таблицами базы данных, к которым соединяют, и имеют тот же случай, то outerjoin
функция добавляет уникальный суффикс в соответствующие имена переменных в data
.
Переменные в data
это соответствует столбцам в столе, из-за которого встают, содержат NULL
значения, когда никакие совпадающие строки не существуют в правильной таблице базы данных. Точно так же переменные, которые соответствуют столбцам в правильной таблице, содержат NULL
значения, когда никакие совпадающие строки не существуют в левой таблице базы данных.
close
| database
| sqlfind
| sqlinnerjoin
| sqlread
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.