精华内容
下载资源
问答
  • 小白一名,最近在做ccfcsp的题目,做到201503-02数字排序,个人认为这个题目就是属于多条件排序,当然题目里面说的也很清楚,先按照次数进行降序,次数相同的话,就按照升序进行排。 在csdn里查找几个关于Python多...

    小白一名,最近在做ccfcsp的题目,做到201503-02数字排序,个人认为这个题目就是属于多条件排序,当然题目里面说的也很清楚,先按照次数进行降序,次数相同的话,就按照升序进行排。

    在csdn里查找几个关于Python多条件排序,说的好像都没毛病,但是配的代码自己运行,就会出现问题,得不出博主的结果,也不敢问,自己觉得写的代码好像错了哈。所以自己在他们的基础上,归纳下哈。

     

    主条件升(降)序,同等情况下次条件降(升)。这里介绍2种条件,2种以上也是一样的。

    1、纯数值

    先举例

    查到的说sorted函数属于稳定排序,原型是

    常用到的参数是iterable,key,reverse,具体是啥意思请自己查哈

    这里的key可以是一个参数,也可以是一个自定义的函数,上面那行代码的意思就是对a这个列表,先按照元组的第二个元素进行降序排序,遇到同等情况,如这里的(3,4)(2,4)就对元组中第一个元素进行升序排序。

    其结果是

    主次条件的顺序等于key=lambda x:(-x[1],x[0])这里面的括号中顺序,也就是说如果你想要先按元组中第一个元素排升序,同等条件下,按第二个排降序,写法就是sorted(a,key=lambda x:x[0],-x[1])),这里加负号的原因是,该方法默认reverse=False,也就是升序,要是写降序,就得加负号。前提是排序的都是数值哈。

    也可以分开来写,分开写,先排次条件,再排主条件。

     

    2、字符

    借鉴一个他人的数据,这里的排序要求是按照升序进行排序,条件优先:P>GD>GS>GA

    teamitems = [{'team':'France'   , 'P':1 , 'GD':-3 , 'GS':1 , 'GA':4}, 
          {'team':'Uruguay'   , 'P':7 , 'GD':4 , 'GS':4 , 'GA':0}, 
          {'team':'SouthAfrica' , 'P':4 , 'GD':-2 , 'GS':3 , 'GA':5}, 
          {'team':'Mexico'   , 'P':4 , 'GD':1 , 'GS':3 , 'GA':2}] 
     
    print(sorted(teamitems ,key = lambda x:(x['P'],x['GD'],x['GS'],x['GA']),reverse=True) )

    如果是要某一部分条件升,一部分降的话,就只能分开写,而且是有先后顺序地。优先级高的条件要写在最后。优先级低的反而写在前面。

    这里key除了写简单的lambda,还可以写函数。

    https://www.cnblogs.com/yeyong/p/6074825.html这篇博主写的list多级排序,

    举例的第二个我运行是错误,

    思路没问题,但是举的第二个例子第一行代码我运行出错,这里的items应该是
    items = [x.split(',') for x in list(filter(None, data.split('\n')[2:]))]

    fliter是过滤器,返回的迭代对象,另外博主注释的是忽略首行,应该还有第一行,所以从2开始。

     

     

    展开全文
  • 1、先说第一个用多个条件进行排序  ORDER BY name,age (多条件排序,还有条件可以再加在后面)  ORDER BY name desc,age asc (不同条件排序规则,先按名字降序排,再按年龄升序排)    2、根据一个条件的...

    1、先说第一个用多个条件进行排序

         ORDER BY name,age       (多条件排序,还有条件可以再加在后面)

         ORDER BY name desc,age asc    (不同条件排序规则,先按名字降序排,再按年龄升序排) 

     

    2、根据一个条件的多个值,进行排序。 

         order by
         case when status=1 then 0
                 when status=0 then 1
                 when status=4 then 2
                 when status=3 then 3
                 when status=2 then 4 ,
        add_time desc

    此句sql的意思是: 先根据用户状态排序:   状态为1的排在最前面  >其次是状态为0  >状态为4  >状态为3  >状态为2 ; 再根据添加时间降序排序。

     

     

     

    展开全文
  • //302-1234 去除单个'-'然后根据大小排序 sorter: (a, b) => a.bianhao.replace("-","") - b.bianhao.replace("-",""), //2018-02-03去除所有'-'然后根据大小排序 ...

     

    //302-1234 去除单个'-'然后根据大小排序
    sorter: (a, b) => a.bianhao.replace("-","") - b.bianhao.replace("-",""),
    //2018-02-03去除所有'-'然后根据大小排序
    sorter: (a, b) => a.inputtime.split("-").join('')  - b.inputtime.split("-").join(''),
    //'苏罡',"研发部" 根据首字母进行排序
    sorter: (a, b) => a.chanpin.localeCompare(b.chanpin, 'zh-Hans-CN', {sensitivity: 'accent'}),
    


    展开全文
  • 表test有3个字段, state, time,name,当state=1时,按照time DESC排序,否则按照name ASC排序,请大神指点
  • 场景:业务数据需要根据未完结、合格、无效的顺序进行排序 state字段表示未完结、合格。STATE == 0 未完结、STATE == 1 合格 abolishState字段标识是否有效。ABOLISH_STATE == 0 有效、ABOLISH_STATE == 1 无效 只要...

    场景:业务数据需要根据未完结、合格、无效的顺序进行排序
    state字段表示未完结、合格。STATE == 0 未完结、STATE == 1 合格
    abolishState字段标识是否有效。ABOLISH_STATE == 0 有效、ABOLISH_STATE == 1 无效

    只要ABOLISH_STATE == 1则不存在未完结和合格状态,该数据直接无效;ABOLISH_STATE == 0时需要判断STATE的值。

    无效:STATE == 0,ABOLISH_STATE == 1
    未完结:STATE == 0,ABOLISH_STATE == 0
    合格:STATE == 1,ABOLISH_STATE == 0

    第一次书写的sql语句:

    SELECT t.STATE, t.ABOLISH_STATE
    FROM PIS_PROJ_LEGACY t
    ORDER BY  t.STATE, t.ABOLISH_STATE
    

    第一次写的时候没有考虑优先级,将STATE放在了前面,数据出现的情况是
    在这里插入图片描述

    由于state是高优先级,系统先将state进行排序,无效的情况就被排到了合格的前面,不符合要求。
    这里无效数据一定是在最后,所以应该是无效字段也就是ABOLISH_STATE的优先级最高。

    正确的sql语句:

    SELECT t.STATE, t.ABOLISH_STATE
    FROM PIS_PROJ_LEGACY t
    ORDER BY  t.ABOLISH_STATE, t.STATE
    

    正确的结果:
    在这里插入图片描述

    结果符合需求

    展开全文
  • 比如:select *from tablename where a like 'xx*' or b = 'xx' or c = 'xx' 查询出来的结果要求a like 'xx*'的记录排在最前面,b = 'xx' 的第二,c = 'xx' 的第三
  • 最近有一个需求:APP端需要有一个热门的版块,热门的规则根据的是点赞数排序,分页不能有重复数据。 方案: 1、给表加多一个更新时间的字段,然后先按赞赏数逆序排序,再按更新时间顺序排序。 2、贴SQL; ...
  • 前言: dataTable对多条件排序,举个例子 可以在每一步自己打断点看下dt的状态, dt.DefaultView.Sort = dt.Columns[2].ColumnName + " DESC,... 可以实现进行条件排序 public static void Get() { DataT...
  • <pre><code>array("name" => "", "uid" => "", "nid" => "", "vid" => ""); </code></pre> <p>And I need it sorted like ...<p>But I can't seem to figure out array_map, uksort()...... </div>
  • <p>I would like to sort the data I receive from an API call on multiple criteria and afterwards filter it to display the data in 2 different tables. <p>This is the code that I have now to sort ...
  • mysql数据模糊查询结果模糊查询如何根据查询条件进行排序,譬如 usertable表结构有三个字段uid,username,age SELECT * FROM usertable WHERE username LIKE '%测%' 查询的结果如下 uid username age 5 安安...
  • order 根据不同条件排序

    千次阅读 2015-08-03 12:27:02
    项目中有一个这样需要按不同条件进行分类排序的需求,百度了半天,最后想了一种写法 (白色部分正序,灰色部分倒序) 这是用到union All SELECT *  FROM (SELECT *  FROM (SELECT openflag,  opennumber,
  • * 二维数组根据字段进行排序 * @params array $array 需要排序的数组 * @params string $field 排序的字段 * @params string $sort 排序顺序标志 SORT_DESC 降序;SORT_ASC 升序 */ //单条件排序 function ...
  • 1 SELECT user_id,left_credit,(@rownum:=@rownum+1) AS rownum 2 FROM credit_user ,(SELECT @rownum:=0) r 3 ORDER BY left_credit DESC ...上面示例根据left_credit字段条件进行倒序排序,然后通过rownum获取...
  • 最近项目中遇到这么一个需求,需要将数组中的多个数组根据字段排序,然后到页面中渲染。 初始数组是这样的 var arr = [ { arr1: [ { name: '我是商品6', ...
  • groovy list 根据双重条件排序

    千次阅读 2014-04-03 18:19:29
    groovy语言有sort()方法可以对list进行排序,如 def list = [1, 3, 5 ,6, 2, 4, 3, 2] println list.sort()将输出 [1, 2, 2, 3, 3, 4, 5, 6] 这是最简单的排序,如果是英文,则会按照字母顺序进行排列。有时需要...
  • 最终效果: 代码:实现了效果 SELECT Sort FROM 表名 ORDER BY CASE WHEN Sort >= 1 THEN 0 ELSE 1 END, Sort ASC 代码二:加上了分页代码 SELECT ROW_NUMBER() OVER ( ORDER ...
  • 3 * 二维数组根据某个字段排序 4 * 功能:按照用户的年龄倒序排序 5 * @author ruxing.li 6 */ 7 header('Content-Type:text/html;Charset=utf-8'); 8 $arrUsers = array( 9 array( 10 ...
  • 如何实现按照不同优先级进行数据的排序:依照下图可以看到,依次是:栋号--期数--房号 这个排序 转载于:https://www.cnblogs.com/whb67/p/3673164.html
  • 在商城列表分页加载的时候,如何实现redis储存,或者根据商品名称进行搜索,如何获取储存在redis中</p>
  • 需求:lambda根据多个条件对list进行排序,并且根据对象内的某个属性值来去重 resList = resList.stream() .sorted(Comparator.comparing(ResCenterAuditDTO::getCreateTime).reversed()) .sorted(Comparator....
  • 首先按照单词出现的次数从大到小进行排序,然后在单词出现次数相同的情况下,最新出现的单词优先排在前面: 思考之后,我想出来的解决方案思路简单来说是,首先统计出每个单词的出现次数以及最后一次出现时的下标数...
  • NSArray 数据对象的多个条件进行排序

    千次阅读 2014-03-03 15:27:24
    //定义排序规则 根据添加顺序优先排序,红色部分代表Class中的属性名称 NSArray *sortDescriptors = [NSArray arrayWithObjects:[NSSortDescriptor sortDescriptorWithKey:@"rule_price" ascending:YES],...
  • 现在 我们需要对表里的数据进行排序,需求是这样的:数据按照日期排序,时间早的的排在前面 ,但是表中bxxl字段的内容是‘紧急管网报修’的话 我们需要对其进行优先排序。接下来直接看实现sql以及最终实现效果。 ...
  • 效果如下:(点击小箭头可根据字段进行排序) 前台需要进行的操作:(将排序字段和排序类型封装为对象跟分页条件及查询条件一起传输到后台) 后台需要进行的操作:(获取前台传递的参数并处理,并添加排序条件...
  • 之前在一个项目的开发中,有遇到要根据分类来分组获取每组一条按... 上面这个语句有可以根据分类分组获得数据,但是无法对获得的数据进行排序,so 继续完善: select * from `表A` where `del`=0 and `markbok...
  • 非数据实体VO需要进行排序分页 前置条件: 1.使用java8; 2.使用Spring框架; 3.排序字段实现Comparable接口。 参数描述: sort :排序字段; mode:升序或降序; page:当前页; limit:限制条数。 代码展示: ...
  • R语言中 数据框排序条件排序

    千次阅读 2019-11-12 10:13:34
    R语言中,如何对数据框的数据根据某个条件进行排序呢?如何根据条件进行排序呢,类似Excel中的排序效果: 1. 示例数据 R语言中鸢尾花的数据,数据有五列: > names(iris) [1] "Sepal.Length" "Sepal.Width" ...
  • 需求:查询一个表中的多个字段进行分页排序,这其中包括有需要根据查询条件传入的经纬度算出两点距离进行排序的一个功能,如果使用mongodb普通方式可以计算出距离,但是不能根据距离进行排序,所以通过mongodb ...
  • 对多张表进行合并字段查询sql: @Select(“SELECT 表名.字段AS 别名,表名....字段 FROM 表名 WHERE 条件 后面可以进行排序或分页条件”) 根据字段的数据进行任意排序的sql:SELECT * FROM 表名 WHERE 条件 orde...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,833
精华内容 733
关键字:

根据条件进行排序