SELECT Product_reference FROM refrence where categories_id=3 AND Product_property ='xxx'
としてProduct_property & categories_idに対するrefrenceテーブルからProduct_reference値を抽出しています構造
ここCREATE TABLE IF NOT EXISTS `refrence` (
`products_ref_id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`categories_id` int(11) NOT NULL,
`Product_property` varchar(255) NOT NULL,
`Product_reference` varchar(50) NOT NULL,
PRIMARY KEY (`products_ref_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;
CREATE TABLE IF NOT EXISTS `product_details` (
`products_id` int(11) NOT NULL AUTO_INCREMENT,
`categories_id` int(11) NOT NULL,
`FieldA` varchar(30) NOT NULL,
`FieldB` varchar(50) NOT NULL,
`FieldC` varchar(255) NOT NULL,
`FieldD` varchar(255) NOT NULL,
`FieldE` varchar(255) NOT NULL,
`FieldF` varchar(255) NOT NULL,
`Field_desc` text NOT NULL,
PRIMARY KEY (`products_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=98 ;
との3つのテーブルを持っている今、このProduct_referenceがproduct_detailsテーブルと仮定する結果内のフィールド名です。 abcです。だから私は
SELECT Distinct abc FROM product_details where categories_id=3
としてproduct_detailsテーブルから明確なABCを抽出したい今、私は1に、クエリの両方を組み合わせたい、単一のものにしてこれらのクエリを記述するための方法は何ですか。私はこの
SELECT Distinct (
SELECT Product_reference FROM refrence where categories_id=3 AND Product_property ='xxx'
) as aa FROM product_details where categories_id=3
しかし、そのは動作していないを試してみました
は、私はいくつかの構文をしないのですすることができます。動作していないものを、あなたがこれを実現しようとしているように見えます知らず
"Bit does not working" - より具体的にできますか?エラーは何ですか? –
categories_idはすべてのテーブルで同じです....私はあなたが外部キーとしてそれを使用しているのですか? –
あなたのクエリを見ると、なぜ 'categories_id = 3'のレコードに対して' refrence'を検索していますか? 'categories_id = 1'レコードの' product_details' - あなたのクエリが意図しているものについてのあなたの説明それは理解することが非常に難しいです。おそらくあなたは明らかにすることができますか? – eggyal