我有一张如上所示的表格。如您所见,“v_ctra_no”列中的值会重复。我应该使用什么类型的SQL查询,以便我能够选择“v_ctra_no”值唯一的那些行。例如
col_name1 col_name2 col_name3
Ctra#001 Cash 200
Ctra#002 Sales 40
Ctra#003 Purchase 1000
我尝试使用下面提到的查询,但它不起作用
SELECT DISTINCT(v_ctra_no),v_ctra_date,v_ctra_id FROM TBL_ACC_CTRA_VCH_MSB
答案 0 :(得分:2)
看起来您正在尝试总结销售额。似乎这更像是你在寻找的东西:
SELECT v_ctra_no, v_ctra_dr_ledgeacc_name, SUM(v_ctra_dr_ledgeacc_amt) AS v_total_sales
FROM TBL_ACC_CTRA_VCH_MSB
GROUP BY v_ctra_no, v_ctra_dr_ledgeacc_name
这将显示帐号和帐户名,以及帐户金额列中所有条目的总数(SUM)。只要所有帐号条目的帐户名称相同,您就不会有任何重复项。
但是,您可能需要考虑重组数据库(如果您有此选项),以便将帐户详细信息与单独的销售额分开。
如果您不想要销售信息,只想要帐户详细信息以及日期,那么您可以在名称上做一个与众不同的内容:
SELECT DISTINCT v_ctra_no, v_ctra_date
FROM TBL_ACC_CTRA_VCH_MSB
但是,每次日期不同时,您都会收到重复但帐号保持不变。如果你考虑一下,这是有道理的。
如果您只想要不同的帐号,请使用:
SELECT DISTINCT v_ctra_no
FROM TBL_ACC_CTRA_VCH_MSB