2015-10-21 33 views
0

我有一个表格stock的列stockID作为主键Stock_Description(显示stockA,StockB,StockC)。从多个表格的单列中检索数据以充当另一个表格的列

然后我有表股票A,StockB和StockC所有他们有列修订版,Id作为主键和StockId作为辅助键。

我想在表格中显示一个列,显示每个Stock_Description的对应版本以及显示A,B,C的列类型。数据库是mysql。

+0

可否请您打扫一下该帖子,以便能够更好地了解您需要的内容......您还尝试了什么? –

+0

你想从这三张表中插入所有数据?或者它只是一个数据选择? –

+0

不清楚你想要什么,你是什么意思的列类型?,如果你能做一个你需要的例子,我们可以帮助 –

回答

0

试试这个:

/* 
    Design 
    <stock_description> {<stock_id>, <stock_a>, <stock_b>, <stock_c>} 
    <stock_*> {<Id>, <stock_id>, <revision>} 
*/ 

SELECT 
    sd.`<stock_id>` 'Stock ID', 
    sd.`<stock_a>` 'Stock A', sa.`<revision>` 'Stock A Revision', 
    sd.`<stock_b>` 'Stock B', sb.`<revision>` 'Stock B Revision', 
    sd.`<stock_c>` 'Stock C', sc.`<revision>` 'Stock C Revision' 
FROM 
    `<stock_description>` sd 
    INNER JOIN `<stock_a>` sa ON sa.`<stock_id>` = sd.`<stock_id>` 
    INNER JOIN `<stock_b>` sb ON sb.`<stock_id>` = sd.`<stock_id>` 
    INNER JOIN `<stock_c>` sc ON sc.`<stock_id>` = sd.`<stock_id>` 
GROUP BY 
    sd.`<stock_id>`; 

青睐,只是在你的数据库中的相应的表名或列名替换<enclosed>部分。干杯!

相关问题