Mysql 按1列列出的唯一表

Mysql 按1列列出的唯一表,mysql,Mysql,我有这样的结构:使用以下示例数据的表命中: page_alpha_id ok_id ip ------------- ------------ ----------- zfuUnu4K11R9C 100255884520 95.73.30.67 wL77qKOmSTFW 100279470528 91.39.146.76 OArxea90 100307614632 176.50.251.94 wefweffew

我有这样的结构:使用以下示例数据的表命中:

page_alpha_id   ok_id               ip
-------------   ------------    -----------
zfuUnu4K11R9C   100255884520    95.73.30.67
wL77qKOmSTFW    100279470528    91.39.146.76
OArxea90        100307614632    176.50.251.94
wefweffew       100307614632    126.40.251.94
yuSb4zzRs       100326443828    93.88.21.86
OxyCtgwlwRFX    100356656755    93.223.88.254
ukwY8SpBT5crX   100375258476    81.4.193.238
ifmgtm7QC       100488290479    95.71.3.15
如何删除列ok\u id中重复的行

删除哪一行无关紧要。

您可以将delete与join一起使用,假设其他列中的一列对每个ok\u id都有不同的值。例如:

delete h
    from hits h join
         (select ok_id, max(page_alpha_id) as maxpad
          from hits h
          group by ok_id
         ) hmax
         on h.ok_id = hmax.ok_id and h.page_alpha_id < hmax.maxpad;

使用删除的特殊联接语法:

delete a
from hits a
join hits b on a.ok_id = b.ok_id
  and a.page_alpha_id > b.page_alpha_id

使这项工作起作用的诀窍是额外的大于条件,它既防止行连接到自身,又只在连接的一侧拾取。

如果这不重要,那么您可能会遇到更大的问题!