【发布时间】:2015-07-21 14:53:57
【问题描述】:
我有一个包含所有产品销售的表格,表格包含:
id
date
product
make
model
cost
taxes
invoice
每件售出的产品都会单独插入到表格中,因此如果客户购买了 3 种具有相同发票编号的不同产品,比如说 (0009),那么表格将如下所示
product = example one
make = samsung
model = demo one
cost = 100
taxes = 19
invoice = 0009
第二个插入的产品
product = example two
make = samsung
model = demo two
cost = 200
taxes = 38
invoice = 0009
现在的问题是:
我需要在一天或一周或一个月内显示所有发出的发票,因此我使用以下代码:
$invoices = mysqli_query($db, "SELECT * FROM `sales` WHERE `date` = '$today'");
我得到的结果是在此日期内售出的所有产品。但我只需要显示每张发票 1 个产品(因为我只需要显示发票编号),如果发票有超过 1 个产品,它会重复。我知道这是因为我没有过滤查询,但问题是我真的不知道如何实现这一点。有人知道怎么做吗?
I tried with LIMIT 1 but I get only 1 result ...
请编辑注释
有些产品没有发票编号,因为我把这些产品卖给了朋友,所以字段(发票)是空的,这就是为什么我需要过滤这个,那列中带有空发票的产品销售不会显示
【问题讨论】:
-
桌子有什么限制吗?
-
你的意思是限制?没有人,因为我们处于测试模式,所以我已将所有权限设置为 mysql 用户
-
您的问题不清楚。您希望哪些列出现在结果集中?你能向我们展示一个期望的输出示例吗?
-
您只想查看唯一的发票编号吗?是否有任何产品被报告回来有关系吗?
-
没错,每次销售只显示一次唯一的发票编号,无论在同一张发票下销售多少产品,它只显示一次,如果没有发票(数据库中为空),那么它得到没有显示
标签: mysql