Я неустанно исследовал, чтобы попытаться понять соединения mysql с несколькими таблицами и то, как справочные таблицы вступают в игру, но безрезультатно. Кроме того, это мой первый пост, так что будьте осторожны, если я пропустил какие-либо правила.
Вот мои таблицы:
customers | CREATE TABLE `customers` (
`customer_num` int(11) NOT NULL AUTO_INCREMENT,
`customer_name` varchar(50) DEFAULT NULL,
`city` varchar(50) DEFAULT NULL,
`state` varchar(50) DEFAULT NULL,
`country` varchar(50) DEFAULT NULL,
PRIMARY KEY (`customer_num`)
orders | CREATE TABLE `orders` (
`order_num` int(11) NOT NULL AUTO_INCREMENT,
`order_date` date DEFAULT NULL,
`shipped_date` date DEFAULT NULL,
`status` varchar(15) DEFAULT NULL,
`comments` text,
`customer_num` int(11) DEFAULT NULL,
PRIMARY KEY (`order_num`)
p_o | CREATE TABLE `p_o` (
`product_num` int(10) unsigned NOT NULL,
`order_num` int(10) unsigned NOT NULL,
KEY `order_num` (`order_num`)
products | CREATE TABLE `products` (
`product_num` int(11) NOT NULL AUTO_INCREMENT,
`year` int(4) unsigned NOT NULL DEFAULT '2014',
`make` varchar(20) NOT NULL,
`model` varchar(20) NOT NULL,
`price` int(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`product_num`)
Клиенты имеют отношения «один-многие» с заказами, в то время как заказы ссылаются на p_o, который имеет как product_num, так и order_num, а p_o также связан с продуктами.
Моя цель состоит в том, чтобы сделать запрос (который несколько оптимален, не все выборки и где), который покажет всю эту информацию в одной таблице. Я создал это, но не могу заставить их отображать больше, чем информацию о двух таблицах.
select * from customers t1 join orders t2 on t1.customer_num=t2.customer_num;
Это соединение показывает всю информацию о заказах и клиентах, и я намереваюсь сделать это внутренним соединением. Я пробовал всевозможные способы заставить их всех объединиться в один, но ни один из них не работает, и я верю, что это на моей стороне. Также я использую модуль, который создает динамические таблицы mysql и не поддерживает объединение, но даже если у вас есть решение, использующее объединение, я его приму.
Любая помощь, которую вы можете предложить, очень ценится, я работаю над этим слишком много часов.
my_column
их использовать не нужно, но для столбцовyear
,my spaced column
они необходимы. 08.01.2015