SQL语句里面对一列数据去重应该怎么搞?

比如我现在想把下面表里面的检查部位每一个都单独统计出来(如胸部正位56,颈椎正侧45),而不是现在看到的这样胸部正位 颈椎正侧35
...我感觉我说的很明白了
我就想统计出来这列里面胸部正位 腰椎侧位等分开来
比如 现在是 胸部正位 胸部侧位片 1
胸部正位 4
头颅CT 胸部正位 3
头颅CT 胸部侧位片 1

统计出来应该是 头颅CT 4
胸部侧位片 2
胸部正位 8
胸部侧位片 2

将TT表替换成你的查询语句。
另外你得保证,检查部位中都是以空格为分隔符的。
还有,对于第20行数据的胸部正位片,实在是没办法,你最好修剪下数据。
SELECT SUBSTR (LTRIM (检查部位, ' '), idx1, idx2 - idx1)
FROM (SELECT 检查部位, NVL (LAG (idx) OVER (ORDER BY ROWNUM) + 1, 1) idx1,
idx idx2
FROM (SELECT DISTINCT 检查部位, idx
FROM (SELECT 检查部位,
DECODE
(INSTR (LTRIM (检查部位, ' '),
' ',
ROWNUM
),
0, LENGTH (LTRIM (检查部位,
' '
)
)
+ 1,
INSTR (LTRIM (检查部位, ' '),
' ',
ROWNUM
)
) idx
FROM tt
CONNECT BY ROWNUM <=
LENGTH (LTRIM (检查部位, ' ')))
ORDER BY idx))
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-28
用“如胸部正位56,颈椎正侧45”做条件,来select他们的counter,并且加上Unique限制,具体参考counter和Unique的语法。

好久没有用sql,只记得这些。
第2个回答  2013-08-27
没有明白你的意思!请说明详细点。

sql语句去重
答案:使用SQL语句去重可以使用`DISTINCT`关键字。详细解释:1. 使用DISTINCT关键字去重 在SQL查询中,如果你想要从数据表中查询独特的记录,可以使用`DISTINCT`关键字。该关键字能够帮助你消除查询结果中的重复行。当你对数据表中的某一列或多个列使用`DISTINCT`时,SQL会确保返回的结果集中不包含任何重...

有哪些方法可以从sql查询结果中去除重复的数据?
首先,使用DISTINCT关键字是去除重复行的简便方法。此关键字在返回结果集时会自动过滤掉重复的记录,实现快速去重。其次,GROUP BY语句结合聚合函数(如COUNT, MAX, MIN, SUM, AVG等)通常用于统计操作,但同样能用于去除重复数据。通过分组,可以识别并消除相同记录。在处理更复杂情况时,ROW_NUMBER()窗口...

浅谈sql数据库去重
答案:在SQL数据库中,去重操作主要通过使用DISTINCT关键字来实现。它可以确保查询结果中的每一行都是唯一的。此外,对于更复杂的需求,可能需要结合GROUP BY子句和其他高级技术来进行更细致的去重操作。详细解释:1. DISTINCT关键字的基本用法:在SQL查询中,如果想要返回不重复的记录,可以使用DISTINCT关键字。

mysql查询去掉重复数据
在MySQL中,处理数据时,我们常常需要去除重复的记录,这时候可以借助distinct关键字和group by语句来实现。distinct关键字用于对指定字段进行去重,只需在查询语句中添加该字段名前的distinct即可,例如:SELECT distinct column_name FROM table_name。而group by则更为灵活,它允许我们按照一个或多个字段对...

sql-distinct怎么对其中某列去重还保留另外的列
正确做法是先明确去重目标。对于上述情况,正确的SQL语句应当对num列去重,并同时保留关联的最小Id值。然而,直接在DISTINCT之后写明去重列可能导致语句错误。正确的方法应是将DISTINCT置于查询的开始位置。在实际操作中,为实现对num列去重的同时保留最小的关联Id,应使用GROUP BY与MAX或MIN函数结合的方法。

SQL:去重的几种常用方法(oracle)
首先,创建一个表并插入数据。然后,对数据集进行去重,以下是具体的方法。1. **使用distinct进行去重 这是一般SQL中的基本方法,能直接去除重复的行。然而,这种方法仅适用于要去重的字段,并不能显示其他字段。2. **使用group by进行去重 通过分组,我们可以只保留每个组中的唯一记录,这适用于具有...

sql去重,同一个字段出现多条取一条的sql语句
要处理SQL去重问题,即在特定字段重复的情况下,仅保留该字段的唯一值并取其他字段的对应行,可以使用子查询结合窗口函数实现。首先,当要求按某字段分组并取每组中的第一条记录时,可以使用如下SQL语句:SELECT b.* FROM (SELECT a.*,ROW_NUMBER() OVER (PARTITION BY a.column) AS group_idx FROM...

mysql查询去掉重复数据
1. 基本语法:在查询语句的SELECT部分,使用DISTINCT关键字来指定要去重的列。例如:sql SELECT DISTINCT column_name FROM table_name;这条语句将会返回指定列的所有不重复的值。2. 多列去重:如果想基于多列去重,可以在DISTINCT后面列出多个列名,如:sql SELECT DISTINCT column1, column2 FROM table_...

sql去重语句
在SQL中,可以使用DISTINCT关键字来去除重复的数据行。plaintextCopy codeSELECT DISTINCT列名1,列名2,FROM表名;其中,列名是需要去重的列名,可以有多个,用逗号隔开。表名是需要操作的表名。例如,如果有一个学生表students,其中有重复的学生姓名,可以使用以下语句去重:plaintextCopy codeSELECT ...

SQL语句怎么对单个字段去重,并且要显示所有列
1、打开SQLyog,在其中新建一个数据库“student”,如下图所示:2、接着,在student数据库新建学生表,通过界面设计学生表中的字段和字段类型长度,如下图所示:3、在学生表中,添加“stu_no”和“stu_score”两个字段,单击确定后,给该表取名为“t_student_tab”,具体如下图:4、向“t_student...

相似回答