Russian Qt Forum

Qt => Общие вопросы => Тема начата: demaker от Август 23, 2016, 22:12



Название: sql-запрос
Отправлено: demaker от Август 23, 2016, 22:12
Прошу прощения к Qt вопрос никак не относится, но осмелюсь спросить.

Есть две таблицы. Table1 и  Table2.
В таблице table1 ecть колонка color и данные находящиеся в этой колонке
могут принимать значения только в соответствии таблице table2.

Table1                             Table2
                                
id   name   color              id       name_color
----------------             ------------------
1    john     blue                1        blue
2    pit        green              2        green

Скажите как должен выглядеть sql- запрос , чтобы определить какие внешние ключи есть у table1 и с какими таблицами и по каким полям они привязаны?  В sql плохо разбираюсь поэтому заранее прошу прощения.



Название: Re: sql-запрос
Отправлено: VPS от Август 23, 2016, 22:27
В таблице 1, наверное, колонка "color" имеет не строковое значение, а такое же, как поле "id" в таблице 2?


Название: Re: sql-запрос
Отправлено: demaker от Август 23, 2016, 22:36
В таблице 1, наверное, колонка "color" имеет не строковое значение, а такое же, как поле "id" в таблице 2?

Да


Название: Re: sql-запрос
Отправлено: VPS от Август 23, 2016, 22:47
Если я правильно понял суть вопроса, то Вам надо "выцепить" структуру таблицы? Может я и ошибаюсь, но в разных СУБД это делается по разному (В mysql вроде можно написать что-то типа: show create table имя_таблицы).

Но с данными таблицами, скорее всего поле "color" является внешним ключом, которое ссылается на поле "id" таблицы 2.

Если Вам надо просто в slq запросе связать данные обеих таблиц для вывода, то можно использовать INNER JOIN.