【问题标题】:how to retrieve array values from mysql table using php? [duplicate]如何使用 php 从 mysql 表中检索数组值? [复制]
【发布时间】:2015-02-21 07:20:33
【问题描述】:

我有一个产品销售表(对步入式客户的销售)。表格行值,如

invoice_no customer_name     product_name             item_code           rate   total etc..
 001           abcd        jasmine,rose,marigold    JS001,R001,MG001    5,6,3
 002           xyz         jasmine,rose,marigold    JS001,R001,MG001    5,6,3

现在我想显示并删除逗号(,)

   $query="select * from product_sales where invoice_no='".$invoice_no."' ";

   Customer Name:abcd

  s.no       product_name    item_code     rate
   1          jasmine        JS001          5
   2          rose           R001           6
   3          marigold       MG001          3

那么如何使用 where 子句从表中获取值。

【问题讨论】:

标签: php mysql arrays


【解决方案1】:

解决原因,而不是症状。

重新设计您的表格结构。像这样的:

两张表:Master & Details

主表将包含通用值。喜欢,

MasterID   InvoiceNo   CustomerName   BillDiscount  GrandTotal

详细信息表将包含每个项目的详细信息。喜欢,

DetailID   MasterID    ItemID    Qty    UnitPrice    Discount   NetAmount

现在您可以获取所需的数据了:

SELECT * FROM Master WHERE InvoiceNo=100

SELECT D.* 
FROM Details D JOIN 
     Master M ON M.MasterID=D.Master 
 WHERE M.InvoiceNo=100

【讨论】:

  • 是的,我有单独的客户表,并为每个客户使用唯一的 ID,上表仅显示客户 ID 或名称,并在他们购买的表中显示产品详细信息。我只会一点点英语
  • @karthik:你的英语很好,不用担心。我只是说您应该更改您当前遵循的表格设计。就像我说的那样,您应该使用附加表(详细信息),而不是将不同的项目存储在一条记录中。当您使用它时,您就会知道这种设计的灵活性。
  • 我的问题是如何删除逗号(,)并显示产品名称。每个产品名称应遵循数量、费率和总计。
  • @karthik: 用逗号分隔,请参考this link。我应该说,如果您遵循相同的表设计,您将不得不对结果使用非常复杂的查询。这就是为什么我坚持要你改变设计。
  • 好的,我会参考它。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-06-22
  • 2020-03-18
  • 2017-02-11
  • 1970-01-01
相关资源
最近更新 更多