回覆列表
  • 1 # 使用者9312043621443

    oracle中在一張表中某個欄位下面有重複記錄,有很多方法,但是有一個方法,是比較"高效"的,如下語句:

    selectdata_guid

    fromadam_entity_datasa

    wherea.rowid>(selectmin(b.rowid)

    fromadam_entity_datasb

    whereb.data_guid=a.data_guid)

    如果表中有大量資料,但是"重複資料比較少",那麼可以用下面的語句提高效率

    selectdata_guid

    fromadam_entity_datas

    wheredata_guidin(selectdata_guid

    fromadam_entity_datas

    groupbydata_guid

    havingcount(*)>1)

    此方法查詢出所有重複記錄了,也就是說,只要是重複的就選出來,下面的語句也許"更高效"

    selectdata_guid

    fromadam_entity_datas

    whererowidin(selectrid

    from(selectrowidrid,

    row_number()over(partitionbydata_guidorderbyrowid)m

    fromadam_entity_datas)

    wherem1)

  • 中秋節和大豐收的關聯?
  • 袋裝平菇種植技術與管理?