簡體   English   中英

mysql從表中選擇,具體取決於數據在哪個表中

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM