I am guessing you are setting up a clothing store, selling mens/womens/unisex? clothing
If this is the case, I think your table structure seems too complicated.
Based on your image, I’m not sure where the unisex fits in, but here is a simple structure, which allows each item to have several sizes available, based on the data in your table.
Have a table for items
Have a table for sizes
Have a table for item sizes
tblitems contains the product information
tblsizes contains all of the size information
tblitemsize is the linking table so you can create a many-many relationship.
On this basis, any item can potentially have any size, but you can use logic in your web pages admin if desired to restrict options, so you cannot associate womens sizes with mens clothing for example.
Eg you could add a M/F field to the sizes table
I added some dummy data to the basic table layout
CREATE TABLE IF NOT EXISTS `tblitems` (
`ItemID` int(11) DEFAULT NULL,
`ItemDescription` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `tblitems` (`ItemID`, `ItemDescription`) VALUES
(1, 'Mens Shirt'),
(2, 'Ladies Trousers'),
(3, 'Ladies Blouse');
CREATE TABLE IF NOT EXISTS `tblsizes` (
`SIzeID` int(11) DEFAULT NULL,
`SizeDescription` varchar(255) DEFAULT NULL,
`Bust/Chest` varchar(255) DEFAULT NULL,
`Waist` varchar(255) DEFAULT NULL,
`HipSeat/Sleeve` varchar(255) DEFAULT NULL,
`Inseam` varchar(255) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `tblsizes` (`SIzeID`, `SizeDescription`, `BustChest`, `Waist`, `HipSeatSleeve`, `Inseam`) VALUES
(1, 'XS 2-4', '30"-33"', '23"-25"', '33"-35"', '30"'),
(2, 'S 4-6', '33"-35"', '25"-27"', '35"-37"', '30.5"'),
(3, 'M 6-8', '35"-37"', '27"-29"', '37"-40"', '31"'),
(4, 'L 10-12', '37"-40"', '29"-32"', '40"-43"', '31.5"'),
(5, 'XL 14-16', '40"-45"', '32"-35"', '43"-46"', '32"'),
(6, 'S Petite', '-', '-', '35"-37"', '28.5"'),
(7, 'S Long', '-', '-', '35"-37"', '32.5"'),
(8, 'M Petite', '-', '-', '37"-40"', '29"'),
(9, 'M Long', '-', '-', '37"-40"', '33"'),
(10, 'L Petite', '-', '-', '40"-43"', '29.5"'),
(11, 'L Long', '-', '-', '40"-43"', '33.5"'),
(12, 'S', '34"-37"', '28"-30"', '32"-33"', '31.5"'),
(13, 'M', '37"-40"', '32"-34"', '33"-34"', '32"'),
(14, 'L', '40"-45"', '24"-36"', '34"-35"', '32.5"'),
(15, 'XL', '45"-49"', '36"-38"', '35"-36"', '33"'),
(16, 'XXL', '49"-53"', '38"-40"', '36"-38"', '33.5"'),
(17, 'M Short', '-', '-', '32"-34"', '30"'),
(18, 'M Long', '-', '-', '32"-34"', '34"'),
(19, 'L Short', '-', '-', '34"-36"', '30.5"'),
(20, 'L Long', '-', '-', '34"-36"', '34.5"'),
(21, 'XL Short', '-', '-', '36"-38"', '31"'),
(22, 'XL Long', '-', '-', '36"-38"', '31.5"');
CREATE TABLE IF NOT EXISTS `tblitemsize` (
`ItemSizeID` int(11) DEFAULT NULL,
`ItemID` int(11) DEFAULT NULL,
`SizeID` int(11) DEFAULT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
INSERT INTO `tblitemsize` (`ItemSizeID`, `ItemID`, `SizeID`) VALUES
(1, 1, 12),
(2, 1, 13),
(3, 1, 15),
(4, 2, 6),
(5, 2, 7),
(6, 2, 10),
(7, 3, 1),
(8, 3, 2),
(9, 3, 4);
SELECT tblitems.ItemID, tblitems.ItemDescription, tblsizes.SizeDescription, tblsizes.BustChest, tblsizes.Waist, tblsizes.HipSeatSleeve, tblsizes.Inseam
FROM tblitems INNER JOIN tblitemsize ON tblitems.ItemID = tblitemsize.ItemID INNER JOIN tblsizes ON tblitemsize.SizeID = tblsizes.SIzeID
WHERE tblitems.ItemID=1;
Hope this helps