查找具有相同记录的记录

时间:2015-11-12 13:27:43

标签: sql sql-server sql-server-2008

我在表格中有记录,如附图所示。所有我需要找到那些具有相同"排序顺序"不同的" packageboxtypeid" w.r.t" CCID"。所以我们需要找到那些具有相同CCID,相同排序顺序但不同packageboxtypeid的记录。请帮忙。enter image description here

2 个答案:

答案 0 :(得分:4)

听起来像这样的东西会起作用。通过def waiting_effects(function): def new_function(*args, **kwargs): QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) try: return function(*args, **kwargs) except Exception as e: raise e print("Error {}".format(e.args[0])) finally: QApplication.restoreOverrideCursor() return new_function 使用INNER JOIN,您可以并排比较记录。

SELECT *

但是,如果您只需要一个纯粹的记录列表而不是并排比较,那么您可以使用与SELECT * FROM [Table] A INNER JOIN [Table] B ON A.CCID = B.CCID AND A.SortOrder = B.SortOrder AND A.PackageBoxTypeId <> B.PackageBoxTypeId EXISTS相关的子查询,因为@gmiley指出在评论中。我选择IN作为示例,因为我不知道您的EXISTS是否具有NULL值,但是当有NULL列时,我会远离PackageBoxTypeId

IN

答案 1 :(得分:2)

SELECT DISTINCT t1.*
FROM table1 t1
INNER JOIN table1 t2
   ON t1.CCID = t2.CCID
   AND t1.sortorder = t2.sortorder
   AND t1.packageboxtypeid <> t2.packageboxtypeid