作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这个问题有点棘手,我希望我能在这个问题上说清楚,因为这不是很常见的问题(或者也许是?)。
我有一个表,其中有像这样的重复记录(我说的是数百个):
| Code|Route|State|City|Start| End|Style|
|-----------------------------------------|
| R14| 14| NL| MTY| Ind|Main| High|
| R14-01| 14| NL| MTY| Ind|Main| High|
| R15-1| 15| NL| MTY| Cal| Cle| Low|
| R15B| 15| NL| MTY| Cal| Cle| Low|
| R14-2| 14| NL| MTY| Ind|Main| High|
| RT15th| 15| NL| MTY| Cal| Cle| High|
| RT15°| 15| NL| MTY| Cal| Cle| High|
| R15.3| 15| NL| MTY| Cal| Cle| Low|
| RT15/H| 15| NL| MTY| Cal| Cle| High|
我需要得到这样的答案:
| Code|Route|State|City|Start| End|Style|
|---------------------------------------|
| R14| 14| NL| MTY| Ind|Main| High|
| R15| 15| NL| MTY| Cal| Cle| Low|
| RT15| 15| NL| MTY| Cal| Cle| High|
我已经创建了按路线、州、城市、开始、结束和样式对结果进行分组的查询;这是非常简单的部分。
SELECT DISTINCT Route, State, City, Start, End, Style FROM Routes;
如果您可以看到代码列是唯一导致问题的列。我需要按类似代码对该列进行分组(交叉字符及其位置 R14、R14-01、R14-2 => R14 和 R15-1、R15-2 = > R15- 和 R15、R15-1 => R15)
知道如何获得这些交叉点吗?
澄清一下代码列是一团糟,有很多字符用作限制符。该表并没有那么短,我正在谈论数千条记录,其中一些存在这个问题。我稍微扩大了表格,以便您可以更好地了解我要完成的任务。
最佳答案
你可以这样做:
select (case when code in ('R14', 'R14-01', 'R14-2') then 'R14'
when code in ('R15-1', 'R15-2') then 'R15-'
when code in ('R15', 'R15-1') then 'R15'
else code
end) as newcode, Route, State, City, Start, End, Style
from t
group by newcode, Route, State, City, Start, End, Style;
我注意到 R15-1
被分配到两个类别。
关于mysql - 如何将重复的记录合并为一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50421110/
我是一名优秀的程序员,十分优秀!