精华内容
下载资源
问答
  • SQL不重复查找数据及把一列多行内容拼成一行 如下表: 表名:Test ID RowID Col1 Col2 1 1 A A 2 1 B A 3 1 A B 4 1 C B 1,查找表中字段重复的...

    SQL不重复查找数据及把一列多行内容拼成一行

     

    如下表:

    表名:Test

    ID RowID Col1 Col2
    1 1 A A
    2 1 B A
    3 1 A B
    4 1 C B

     

     

     

     

     

    1,查找表中字段重复的只查找一次

    select distinct Col1 from Test ;

    select Col1 from Test where ID in(select min(ID) from Test  group by Col1 );

    结果为:

    A

    B

    C

    2,统计并查询该字段出现的数量

      SELECT Col1,COUNT(Col1) FROM Test GROUP BY Col1;

    结果为:

    A      2

    B      1

    C      1

    3,把一列多行内容拼成一行

     select STUFF ((select ','+F.Col1 from Test F where F.RowID= 1 order by F.ID FOR XML PATH('')),1,1,'') As Col3;

    结果为:

    Col3

    A,B,A,C

    转载于:https://www.cnblogs.com/cjm123/p/8564194.html

    展开全文
  • 1、做透视表统计 2、设置显示格式 3、取消分类汇总 4、拷贝到原数据后面 5、排序

    1、做透视表统计
    2、设置显示格式
    在这里插入图片描述

    3、取消分类汇总
    在这里插入图片描述

    4、拷贝到原数据后面
    在这里插入图片描述

    5、排序

    在这里插入图片描述

    展开全文
  • /// <summary> /// 查找重复值(多列) /// </summary> /// <param name="colNums"></param> /// <returns></returns> public string...
            /// <summary>
            /// 查找重复值(多列)
            /// </summary>
            /// <param name="colNums"></param>
            /// <returns></returns>
            public string FindRepeat(int[] colNums)
            {
                List<string> ls = new List<string>();
                Excel.Range rng = Sht.UsedRange;
    
                int startLine = rng.CurrentRegion.Rows[1].Row;
                int endLine = rng.CurrentRegion.Rows[rng.CurrentRegion.Rows.Count].Row;
                if (endLine > startLine)
                {
                    List<object[,]> listObjs = new List<object[,]>();
                    foreach (int col in colNums)
                    {
                        object[,] objs = Sht.Range[Sht.Cells[startLine, col], Sht.Cells[endLine, col]].Value2;
                        listObjs.Add(objs);
                    }
    
    
                    Dictionary<string, List<int>> dict = new Dictionary<string, List<int>>();
    
    
    
                    for (int i = listObjs[0].GetLowerBound(0); i <= listObjs[0].GetUpperBound(0); i++)
                    {
                        List<string> lsLine = new List<string>();
                        for (int j = 0; j < listObjs.Count; j++)
                        {
                            string c = (null == listObjs[j][i, 1]) ? "" : listObjs[j][i, 1].ToString().Trim();
                            lsLine.Add(string.Format("[{0}{1}]{2}", colNums[j], MyCommon.IntToLetter(colNums[j]),c));
                        }
    
                        string k = string.Join("/",lsLine.ToArray());
                        if (!dict.ContainsKey(k))
                        {
                            List<int> rows = new List<int>();
                            rows.Add(startLine - 1 + i);
                            dict.Add(k, rows);
                        }
                        else
                        {
                            dict[k].Add(startLine - 1 + i);
                        }
                    }
    
                    foreach (var item in dict)
                    {
                        if (item.Value.Count > 1)
                        {
                            ls.Add(string.Format("【{0}】:【{1}】", item.Key, string.Join("/", item.Value.ToArray())));
                        }
                    }
                }
    
    
                //ls.Add(string.Format("所在列:{0},开始行号:{1} 结束行号:{2}",col,startLine,endLine));
    
                return string.Join(Environment.NewLine, ls.ToArray());
    
            }
    

    调用:

            /// <summary>
            /// 查找重复项
            /// </summary>
            /// <param name="control"></param>
            public void FindRepeat(IRibbonControl control)
            {
                Excel.Application app = ExcelDnaUtil.Application as Excel.Application;
                if (!Information.TypeName(app.Selection).Equals("Range"))
                    return;
    
                Excel.Range rngSelection = app.Selection;
                HashSet<int> colNums = new HashSet<int>();
                foreach (Excel.Range item in rngSelection.Areas)
                {
                    colNums.Add(item.Column);
                }
                List<int> colNumList = new List<int>(colNums); colNumList.Sort();
    
                //string msg = string.Format("{0}",string.Join("/", colNumList.ToArray()));
                //MessageBox.Show(msg);
    
                string msg = string.Empty;
                MyAided myAided = new MyAided(app.ActiveSheet as Excel.Worksheet);
                if (1 == colNumList.Count)
                {
                    msg = myAided.FindRepeat();
                }
                else
                {
                    msg = myAided.FindRepeat(colNumList.ToArray());
                }
    
    
                if (!string.IsNullOrEmpty(msg))
                {
                    MessageBox.Show(msg, "重复项", MessageBoxButtons.OK);
                    MyCommon.WriteLog(msg, "d:\\Log", true);
    
                }
            }

     

    展开全文
  • 数据由单列或单行编辑成多行多列

    千次阅读 2014-05-15 10:16:09
    以下例子由单列变成多行多列为l原始数据只有一

    以下例子由单列变成多行多列为例,单行数据操作相同

    原始数据:                                  

        

     结果数据:

     

    过程操作:

    1、在目标单元格里输入原始数据的单元格号,先输入A1,A2,然后选中光标变成实体+字的时候,右拉填充,然后再下来填充,变成


    2、选中上面的目标单元格,是查找替代功能,将A替换成=A。


    3、这个时候已经实现数据的格式转换,但是目标数据和原始数据还有关联关系,相当于是用=A1这种公式来显示A1单元格的数据,如果直接拷贝到其他单元格,会出错,需要拷贝,右键“选择性粘贴”,选“数值”就可以了。

    展开全文
  • 填写需要查找的值,或者选择需要查找的值所在的单元格。 match_range 匹配区域。必填字段。选取lookup_value的查找区域,也就是你要在哪里找lookup_value。通常选取一整列。 return_range 返回区域。...
  • --1、查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断 select * from people where peopleId in (select peopleId from people group by peopleId having count(peopleId) > 1) --例二: select...
  • sql如下: select s.* from (select row_number() over (partition by customid order by customid) as group_idx,t.* from tb_card t where t.name='abc' and t.store_id= 9) s where s.group_idx = 1 ...
  • 一般的后台程序基本上都会遇到和数据库交互的情况,在这种情况里面又会碰到数据库表数据的去重需求,鉴于此,我把自己在项目中遇到的情况做了一个整理,方便自己以后查看,也希望能给看到这边...(1)查询某一列重复记...
  • 一、单列重复查询 sql:SELECT Name FROM testtable t WHERE Name IN ( SELECT Name FROM testtable GROUP BY Name HAVING COUNT(Name)>1 ) ORDER BY t.Name 查询结果: 用DISTINCT单列查询 sql: ...
  • 可能很多人在使用VLOOKUP的时候,对于条件时,则会使用辅助进行查找,那么不使用辅助是否也可以呢? 答案是:必须可以。 问题处理: 1.使用辅助 2.不使用辅助的操作如下: 公式:=VLOOKUP(条件1&...
  • vi 删除多行

    2014-07-21 10:55:08
    多行删除 ,:1,10d 法二: 光标所在行,dd 光标所在行以下的N行,Ndd 方法1: 光标放到第6行, 输入:2yy 光标放到第9行, 输入:p 此方法适合复制少量行文本的情况,复制第6行(包括)下面的2行...
  • 数据库多行合并

    2018-09-20 21:47:14
    1)内容:将原本数据,根据某个字段内容进行分类,然后将相同类型的数据合并为一行显示。 2)函数: 2.1) 数据库:SQL SERVER2008 函数:for xml path 注意:sql server... 效果图: 参考:oracle 将个查询结果合并
  • 如何将单元格中的数据拆分多行

    万次阅读 2017-11-08 16:03:32
    把J中包含条数据的单元格进行拆分成多行,一个单元格只包含一条数据,其他的数据重复 解决方案 复制j2单元格中两个数字之间的空格,替换:查找内容为你复制的空格,替换内容为:alt+10—-全部替换(alt+10操作...
  • Oracle查询某一重复部分

    千次阅读 2017-03-17 09:46:36
    Oracle 查询某一重复部分
  • 数据库查询是java开发人员必备的技能,当然也是java面试题中必考的,面试时见到这个一个数据库查询,心中依然存有 ...这个暂时还没测试过,就是心中有疑问,这个查询的方式效率会有高,写出来希望大家能够多多指点 
  • 今天操作nginx配置文件,需要一次性注释多行,去网上查找直接注释多行的语句,shell脚本可以注释成功,但配置文件总是报错,还是用"#"注释靠谱,下面就来学一下如何一下注释多行 同时注释多行 1、首先,将光标放在要注释...
  • 单行函数和多行函数

    2015-07-17 15:45:06
    GROUP BY 语句用于组合函数, sum,avg,count等为组合函数,根据一个或对结果集进行分组 —求部门(-deptno)的平均工资(-avg(sal)). (按照部分分组。) select deptno,avg(sal) from emp group by deptno;...
  • sublime text常用快捷键及多行光标批量操作教程

    万次阅读 多人点赞 2018-02-21 17:02:26
    sublime text多行光标批量操作快捷键 Ctrl+ALT+↓ 按end定位到行尾
  • Vscode下进行多行操作html标签

    千次阅读 2019-04-16 22:48:44
    2.Alt+Shift 竖选择,一次性编辑个相似标签。 3.Alt+ ↑ 向上移动行 Shift+Alt + ↓ / ↑ 向上/向下复制行 Copy line up/down Ctrl+Shift+K 删除行 Delete line Ctrl+] / [ 缩进/缩进行 Indent/o...
  • sublime text多行光标批量快捷操作 Ctrl+ALT+↓ 按end定位到行尾 sublimetext常用快捷键 Ctrl+Shift+P:打开命令面板 Ctrl+P:搜索项目中的文件 Ctrl+G:跳转到第几行 Ctrl+W:关闭当前打开文件 Ctrl+Shift+W:关闭...
  • 最近遇到一个问题,每个表的字段分别一展示,不同表有公共字段,也有独有的字段,现想统计这些表共涉及哪些字段。基本思路就是将这些表的字段合并为一再去重。OFFSET函数的功能是以指定的引用为参考系,通过给定...
  • '本例是删除标题为sheet1的EXCEL表中以A(从A2单元格开始)为条件的重复韩国数据 Application.ScreenUpdating = False '可根据实际情况修改下面三行的结尾值 Dim sheetsCaption As String: sheetsCaption = ...
  • 1. 多行编辑 sublime 最简单的多行编辑实现方法 1. 鼠标选中文件 然后按 ctrl+D 自动选中相同的进行同时编辑 2.选中shift按键+鼠标右键进行选择,可以同时选中多行进行编辑。 notepad++ 可以选中alt按键进行...
  • vim多行注释、替换和其他操作

    千次阅读 2012-05-23 13:55:48
    vim多行注释、替换和其他操作 2007年11月19日 星期一 11:22 清空寄存器:qXq,X代表某一寄存器 多行注释: :.,+3 s/^/#/g 注释从当前行起的后三行(不含当前行) vi替换命令用法详解: ...
  • 1.同一列 后一行对比前面所有行 ...2.两行两列(多行多列) 两行两列 =IF(SUMPRODUCT((B$2:B2=B2)*(C$2:C2=C2))>1,"重复","") 多行多列 =IF(SUMPRODUCT((列$行:列行=列行)*(列$行:列行=列行)*(列$行:列行=列行...
  • Eclipse 的快捷键以及文档注释、多行注释的快捷键

    万次阅读 多人点赞 2015-10-19 13:12:55
    一、多行注释快捷键 1.选中你要加注释的区域,用ctrl+shift+C 或者ctrl+/ 会加上//注释 2.先把你要注释的东西选中,用shit+ctrl+/ 会加上/* */注释 3.以上快捷在重复按一下就会去掉加上的注释 4.要修改在eclispe中...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 33,938
精华内容 13,575
关键字:

多列多行查找重复