C# access查询以从多个表中获取记录
我正在尝试从5个表中获取记录,最后我已经这样做了,但现在我需要唯一的记录,所以我应该在查询中更改什么C# access查询以从多个表中获取记录,c#,ms-access,C#,Ms Access,我正在尝试从5个表中获取记录,最后我已经这样做了,但现在我需要唯一的记录,所以我应该在查询中更改什么 SELECT t.*, sh.invoice_Number AS sale_inv_no, sh.invoice_date AS sale_inv_date, sh.from_Date AS sale_from, sh.to_Date AS sale_to, sh.number_Of_Months AS sale_nom, c.cName AS cust_name,
SELECT
t.*,
sh.invoice_Number AS sale_inv_no,
sh.invoice_date AS sale_inv_date,
sh.from_Date AS sale_from,
sh.to_Date AS sale_to,
sh.number_Of_Months AS sale_nom,
c.cName AS cust_name,
h.hName AS ho_name,
[hSize1] & 'X' & [hSize2] & '=' & [hSize_SQF] AS ho_size,
h.hLocation AS ho_loc,
c.cMobile AS cust_mob,
f.firmName AS firm_name
FROM
(
(
(
adv_tbl_transactions AS t
RIGHT JOIN
adv_tbl_Sale_Hoardings AS sh
ON t.tra_code = sh.transaction_code
) LEFT JOIN adv_tbl_Hoardings AS h
ON sh.hid = h.ID
) LEFT JOIN tbl_Firms AS f
ON sh.e_fid = f.ID
) LEFT JOIN tbl_Customers AS c
ON sh.cid = c.ID
WHERE
(((t.e_fid)=1));
它给我的输出如下
srNo | Hoarding | customers | transaction details | advance | balance | total
1 | Name: h1 | Cust1 | inv no : 1 | 6000 | 1000 | 70000
2 | Name: h1 | Cust1 | inv no : 1 | 6000 | 1000 | 70000
3 | Name: h2 | Cust2 | inv no : 2 | 3000 | 1000 | 40000
4 | Name: h2 | Cust2 | inv no : 2 | 3000 | 1000 | 40000
我想输出如下所示srNo | Hoarding | customers | transaction details | advance | balance | total
1 | Name: h1 | Cust1 | inv no : 1 | 6000 | 1000 | 70000
2 | Name: h2 | Cust2 | inv no : 2 | 3000 | 1000 | 40000
我想要区分列条目\u no
使用
区分关键字:
select distinct t.*,
sh.invoice_Number AS sale_inv_no,
sh.invoice_date AS sale_inv_date,
sh.from_Date AS sale_from,
sh.to_Date AS sale_to,
sh.number_Of_Months AS sale_nom,
c.cName AS cust_name,
h.hName AS ho_name,
[hSize1] & 'X' & [hSize2] & '=' & [hSize_SQF] AS ho_size,
h.hLocation AS ho_loc,
c.cMobile AS cust_mob,
f.firmName AS firm_name
FROM (((adv_tbl_transactions AS t
RIGHT JOIN adv_tbl_Sale_Hoardings AS sh
ON t.tra_code = sh.transaction_code)
LEFT JOIN adv_tbl_Hoardings AS h
ON sh.hid = h.ID)
LEFT JOIN tbl_Firms AS f ON sh.e_fid = f.ID)
LEFT JOIN tbl_Customers AS c
ON sh.cid = c.ID
WHERE (((t.e_fid)=1)) ;
我尝试在所有列之前选择“selectdistinct sh.entry\u no”,但它仍然显示重复records@Raj-如果只选择示例输出中实际显示的列,会发生什么情况?我的猜测是,您没有显示的列中的数据不同,因为考虑到您提供的信息,Nasir的答案是正确的。由于上面的查询访问提供了重复记录,实际上存在重复记录,但我需要不同的条目或发票记录。我使用了上面的查询,但不工作“它给我的输出如下”-你确定吗?这两列完全不同!可能在实际输出的右侧有更多的列…?是的,有更多的列,但我无法在此处附加图像,以便向您显示我的报告数据,我在这里只给出了一些专栏,其他专栏的内容对于确定为什么纳西尔的解决方案对你不起作用是至关重要的。@Chris Rolliston:只有我在努力找出答案