精华内容
下载资源
问答
  • mysql中将多行数据合并成一行数据 一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据 例如:一个活动id(activeId)对应多个模块名(modelName),按照一般的sql语句: 1 SELECT am.activeId,m.model...

    mysql中将多行数据合并成一行数据

    一个字段可能对应多条数据,用mysql实现将多行数据合并成一行数据

    例如:一个活动id(activeId)对应多个模块名(modelName),按照一般的sql语句:

    1 SELECT am.activeId,m.modelName
    2 FROM activemodel am
    3 JOIN model m
    4 ON am.modelId = m.modelId
    5 ORDER BY am.activeId
    查询出的列表为图1所示:
    在这里插入图片描述
    修改过后的sql语句,查询后如图2所示:

    1 SELECT am.activeId,GROUP_CONCAT(m.modelName SEPARATOR ‘,’) modelName
    2 FROM activemodel am
    3 JOIN model m
    4 ON am.modelId=m.modelId
    5 WHERE m.valid=1
    6 GROUP BY am.activeId

    需注意:

    1.GROUP_CONCAT()中的值为你要合并的数据的字段名;

    SEPARATOR 函数是用来分隔这些要合并的数据的;

    ’ '中是你要用哪个符号来分隔;

    2.必须要用GROUP BY 语句来进行分组管理,不然所有的数据都会被合并成一条记录,如图3
    在这里插入图片描述
    如有错误,欢迎指正!

    展开全文
  • Excel多行数据倒置

    千次阅读 2019-06-22 17:53:47
    选中所有区域后,点击数据中的“排序”,将关键字选为刚添加的序号列,根据需要升序降序即可。

    选中所有区域后,点击数据中的“排序”,将关键字选为刚添加的序号列,根据需要升序降序即可。在这里插入图片描述

    展开全文
  • jtable排序后删除行,会出现索引不对应的问题 //设置列表可排序jTable1.setAutoCreateRowSorter(true); 解决办法 关键代码: //转换为Model的索引,这句很重要,否则索引不对应 rowIndexes[i] = jTable1....

     

    jtable删除行的问题

     

    jtable排序后删除行,会出现索引不对应的问题

     

    //设置列表可排序
    jTable1.setAutoCreateRowSorter(true);

     

    解决办法

    关键代码:

    //转换为Model的索引,这句很重要,否则索引不对应

    rowIndexes[i] = jTable1.convertRowIndexToModel(rowIndexes[i]);

    //排序,这句很重要,否则顺序是乱的
    Arrays.sort(rowIndexes);

     

    private void btnDeleteActionPerformed(java.awt.event.ActionEvent evt) {                                          
            int[] rowIndexes = jTable1.getSelectedRows();
            
            if(rowIndexes.length == 0){
                JOptionPane.showMessageDialog(null, "请选择行后再删除!");
                return;
            }
            
            int r = JOptionPane.showConfirmDialog(null,
                    "你确定要删除吗?", "确认删除",
                    JOptionPane.YES_NO_OPTION,
                    JOptionPane.QUESTION_MESSAGE);
            if (r != JOptionPane.YES_OPTION) {
                return;
            }
    
            for (int i = 0; i < rowIndexes.length; i++)
            {
               //转换为Model的索引,这句很重要,否则索引不对应
                rowIndexes[i] = jTable1.convertRowIndexToModel(rowIndexes[i]);
            }
            //排序,这句很重要,否则顺序是乱的
            Arrays.sort(rowIndexes);
            
            DefaultTableModel tableModel = (DefaultTableModel) jTable1.getModel();
            //降序删除
            for(int i=rowIndexes.length-1; i>=0; i--){
                tableModel.removeRow(rowIndexes[i]);
                //与Model对应的列表数据,含有更多元数据
                //MainFrame.resultList.remove(rowIndexes[i]);
            }
    
        } 

     

    网上很多人写的删除方法都不涉及表格排序,涉及表格排序的转换索引后又不排序,

    真心感觉jtable的操作太麻烦了,比winform的差多了。

     

    展开全文
  • 使用到的函数 lpad(string str, int len, pad): 返回值:string, 说明:将str进行用pad进行左...按照sroce排序进行累计,order by是个默认的开窗函数,按照class分区。 row_number 与over结合使用 cast: 类型转换 co

    使用到的函数
    lpad(string str, int len, pad):
    返回值:string,
    说明:将str进行用pad进行左补到len位
    如:hive> select lpad(‘abc’,10,‘td’) from lxw1234;
    tdtdtdtabc

    over(partition by class order by sroce):
    按照sroce排序进行累计,order by是个默认的开窗函数,按照class分区。

    row_number 与over结合使用
    在这里插入图片描述
    cast:
    类型转换

    concat_ws(SEP,b,c…):
    SEP表示分隔符,将后面的参数连接成字符串

    collect_list:
    结合group by返回数组

    WITH tbl_hs AS
      (SELECT t1.a,
              t1.b,
              row_number() over(partition BY t1.a
                                ORDER BY t1.c ASC,lpad(t1.d,5,'0') ASC) AS rn
       FROM tabel1 t1
       WHERE t1.day='20200607'
         AND info_type='10'
         AND t1.b NOT IN ('111',
                                '222',
                                '333') ),
         TEMP AS
      (SELECT a,
             collect_list(concat_ws(':',lpad(cast(rn AS string),5,'0'),cast(b AS string))) as all_list
       FROM tbl_hs
       GROUP BY a)
    SELECT * FROM TEMP WHERE size(all_list)>2
    
    展开全文
  • 最近碰到这样一个oracle的问题,有时候想删除指定行数的多行数据,这个多行指的是select * from 表时的行。这时我想到伪列rownum,条件如下: 表:sc ; 复合主键:sno,cno ;想要删除第8行以后的数据。 于是我...
  • postgresql 自定义聚合函数实现多行数据合并成一列
  • ![图片说明](https://img-ask.csdn.net/upload/201701/11/1484101705_231630.png)
  • Oracle多行数据合并成一行 一、listagg 函数------(有长度限制) SELECT listagg(待拼接字段, ',') within group(ORDER BY 待拼接字段) AS NAMES FROM 表 GROUP BY 字段 二、用聚合函数,然后使用 wmsys.wm_concat...
  • 使用SQL语句向表中插入多行数据

    万次阅读 2019-07-11 12:10:18
    继上次使用SQL Server Management Studio创建一个教学数据库和教师关系表之后,再次使用SQL向表中添加数据。 图形界面就不多说了,自己摸索一下就会了,这次还是继续新建查询打开编辑区,要插入数据首先要知道插入的...
  • ![图片说明](https://img-ask.csdn.net/upload/201704/19/1492602050_492297.png)
  • SELECT GROUP_CONCAT(md.data1) FROM DATA md,contacts cc WHERE md.conskey=cc.id AND md....利用函数:group_concat(),实现一个ID对应多个名称时,原本为多行数据,把名称合并成一行,如|1 | 10,20,20| 本文通过
  • Oracle一列的多行数据拼成一行显示字符 Oracle一列的多行数据拼成一行显示字符的方法一共有两种,如下: 1.oracle提供的函数WMSYS.WM_CONCAT,格式WMSYS.WM_CONCAT(A)。默认’,‘隔开,可以使用replace修改。 该函数是...
  • 注意:使用 GROUP_CONCAT()函数必须对源数据进行分组,否则所有数据会被合并成一行 语法 group_concat([DISTINCT] 要连接的字段 [Order BY ASC/DESC 排序字段] [Separator ‘分隔符’]) 排序效果: **分割效果 : ...
  • 数据排序 asc dasc 单一字段 order by + 字段名称 排序采用order by 子句,排序字段可以多个,用,隔开 默认升序(asc),如果有where,order 放在where后面 select ename,sal from emp order by sal;(员工的公司...
  • 把查询name字段得到的多行记录进行合并,可以通过程序实现,但也可直接在sql层完成,需要的朋友可以参考下
  • Oracle多行数据转成一行

    千次阅读 2019-01-30 16:09:52
    由于需要,需要将获取到的机构组织下的子组织组成一行数据,使用到了Oracle自带的函数 listagg (列名,‘分隔符’) within group(order by 列名) 即在每个分组内,LISTAGG根据order by子句对列植进行排序,将排序后的...
  • ![图片说明](https://img-ask.csdn.net/upload/201811/03/1541236479_994952.jpg) 数据效果如图所示,想要得到的效果: STCD STNM STLC 发送到 阿斯蒂芬 是的发 是的 斯蒂芬 是的飞
  • DataGridView控件之多行数据的选中与删除步骤: (1)创建Windows窗体程序,并在窗体上防止一个dataGridView控件名字为dataGridView1,两个按钮控件(ADD和Delete),名字分别为AddBtn、DeleteBtn。 (2)在窗体的加载...
  • 用一条insert 插入多行数据的方法

    千次阅读 2013-11-07 13:02:42
    今天需要用一条insert语句来插入多行数据,觉得这个真的挺实用,不用再用程序来for循环一遍一遍的插入了,事物处理也方便,不同数据库有不同的写法,下面我就来给大家分享一下吧! MySqL数据库: Sql代码  ...
  • pandas匹配特定值索引选取多行数据

    千次阅读 2019-06-26 23:39:26
    [译] Pandas中根据列的值选取多行数据 Python Pandas:获取列匹配特定值的行的索引 Python中append和extend的区别 - 粗面鱼丸 - 博客园 Python数据分析库pandas ------ pandas 删除重复元素、用映射替换...
  • MySQL_函数GROUP_CONCAT_合并多行数据到一行GRGROUP_CONCAT(expr) 该函数返回带有来自一个组的连接的非NULL值的字符串结果。其完整的语法如下所示: GROUP_CONCAT([DISTINCT] expr [,expr ...] [ORDER BY
  • oracle多行合并成一行 使用vm_concat() 函数 ----------------------------------------- u_id goods num ------------------------------------------ 1 苹果 2 2 ...
  • 目录对多行文本的排序程序问题分解1.读取部分2.排序部分3.输出部分4.主程序总结 对多行文本的排序程序 这里对Brian W. Kernighan和Dennis M. Richie的C语言经典教材The C Programming Language (Second Edition)中第...
  • jqGrid 多行数据修改并一起提交

    千次阅读 2015-04-14 13:19:49
    如果为ture则数据只从服务器端抓取一次,之后所有操作都是在客户端执行,翻页功能会被禁用 // sortname: 'mgtk_CreateTime', // 默认的排序列 // sortorder: 'desc', pager: " #gridPager " , // 定义...
  • 函数语法如下:group_concat( 要连接的字段 ) ...主要用途:将一张表中,多行数据合并成为一行 实例demo: 需要分组 加上group by 例子: SELECT  GROUP_CONCAT(c.org_type_name) FROM  base_org_type_...
  • oracle 11g 以上的版本才有的一个将指定列名的多行查询结果,用 指定的分割符号 合并成一行显示: 例如: 表原始数据: 需求:将 mb1_Transport_License_list 表中的数据,根据 transportation_license_id 数据...
  • 一、stuff函数 (一)说明 STUFF()函数用于删除指定长度的字符,并可以在制定的起点处插入另一组字符。 (二)函数 STUFF ( character_expression , start , ...一个字符数据表达式。character_expression 可以...
  • 1.1.用途:进行Python对象的序列化和反序列化(str和python数据类型间转换) #在不同编程语言之间传递对象,必须把对象序列化为标准格式,如XML更好JSON #JSON表示出来就是一个字符串,被所有语言Web页读取比XML更快 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 72,621
精华内容 29,048
关键字:

多行数据如何排序