[英]MySQL SELECT results from 1 table, but exclude results depending on another table?
[英]mysql select from a table depending on in which table the data is in
我有3張桌子,上面放着一家餐廳的產品。 酒吧內的產品,食物和配料。
我使用php和mysql。 我還有另一個表,其中包含有關到目前為止已完成的訂單的信息。 有2個字段(最重要的字段)保存有關產品ID和類型的信息(來自酒吧,廚房或配料)。 我當時想編寫如下的sql查詢,以便將該表用於酒吧產品,廚房或配料,但它不起作用。 基本上,第二個連接表必須是“ bar”,“ produse”或“ stoc”。
SELECT K.nume,
COUNT(K.cantitate) as cantitate,
SUM(K.pret) as pret,
P.nume as NumeProduse
FROM `clienti_fideli` as K
JOIN if(K.tip,bar,produse) AS P ON K.produs = P.id_prod
WHERE K.masa=18 and K.nume LIKE 'livrari-la-domiciliu'
GROUP BY NumeProduse
我認為您無法做到。
您可以更改數據庫架構嗎? 更好的選擇是將欄,食物和配料放在單個表(例如產品)中,並將其字段類型設置為“欄”,“產品”或“爐料”
SELECT K.nume,
COUNT(K.cantitate) as cantitate,
SUM(K.pret) as pret,
P.nume as NumeProduse
FROM `clienti_fideli` as K
JOIN product AS P ON K.produs = P.id_prod AND P.tip = <product_type>
WHERE K.masa=18 and K.nume LIKE 'livrari-la-domiciliu'
GROUP BY NumeProduse
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.