2016-12-02 15 views
0

訂購我有如下表如何通過自定義屬性在MySQL

訂購

Id Name<br> 
-- ------- 
1 test1<br> 
2 test2<br> 
3 test3<br> 

Order_property

id order_id name value<br> 
-- -------- ---- -------- 
1  1   test4 11<br> 
2  1   test5 22<br> 
3  2   test4 33<br> 
4  2   test5 44<br> 
5  3   test4 55<br> 
6  3   test5 66<br> 

我想找到所有的訂單。按價值排序具有name ='test4'。

我應該如何寫一個querty。請建議

+0

名稱其中表? – e4c5

+3

要澄清問題,請發佈所需結果。另外,你到目前爲止嘗試過什麼?請發佈您的代碼以獲得一些幫助。 – Aleksej

+0

我想要記錄「order by」的值 – Prashant

回答

0

您需要將這些表格綁定在一起。

select * from orders o, order_property op where o.id = op.order_id order by op.name 
+0

我想要記錄「order by」值 – Prashant

+0

我希望所有的ordres不是op.name ='test4'但是按(op.value和name ='test4')排序 – Prashant

+0

@Prashant指定* wanted *結果在你的問題。 – Roger

0

所有的名字列第一個是重複的不必要的嘗試,以避免重複條目,

如果爲了& Order_property是指表名稱也必須對給定的例子匹配

查詢

 Select o.*,op.* from orders o 
    INNER JOIN order_property op ON o.id = op.order_id 
    where op.name = 'test4' order by op.value 

希望工程

+0

我想要記錄「order by 「值 – Prashant

+0

從訂單中選擇o。*,op。* INNER JOIN order_property op ON o.id = op.order_id 其中op.name ='test4'order by op.value – ishwar

+0

我希望所有的ordres都不是op。 name ='test4'但是按(op.value和name ='test4')排序 – Prashant