当前位置: 首页 > news >正文

sql求倒数第二大的数,效率不高,但写法新颖

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace ConsoleApplication9
{
    class Program
    {
        static void Main(string[] args)
        {
// sql如下,我把它翻译成代码,加深理解
// SELECT MAX(id)FROM sys_menu E1 // WHERE // (SELECT COUNT(DISTINCT(E2.id)) FROM sys_menu E2 // WHERE E2.id > E1.id // ) = 1; --9990 List<int> list = new List<int> { 1, 2, 3, 55, 66 }; int max = 0; foreach (var id1 in list) { int count = 0; var dic = new Dictionary<int, int>(); foreach (var id2 in list) { if (!dic.ContainsKey(id2)) { if (id2> id1) { count++; } dic[id2] = 1; } } //上面的代码说明id2>id1那么id1就不可能是最大的,并且比id1大的要求只能有一个,那么说过成语吧一人之下,万人之上 (注意这个至少要2个元素才有意义) //所以也说明上面的sql有个陷阱SELECT MAX(id) 改为 select id也是可以的, 但其实max也是为了没有记录的时候返回一个空值 if (count != 1) { continue; } if (max == 0) { max = id1; } else if (id1> max) { max = id1; } } Console.WriteLine(max); Console.Read(); } } }

 

转载于:https://www.cnblogs.com/kexb/p/9265451.html

相关文章:

  • ansible结合zabbix_api批量添加主机
  • 7月4日
  • Nginx+Php-fpm运行原理详解
  • MySQL逻辑架构(一)
  • 深度学习中的信息论知识详解
  • 老司机 iOS 周报 #26 | 2018-07-09
  • OSChina 周一乱弹 —— 这狗像不像我女朋友
  • ListView点击事件失效(item里面有button按钮控件)解决方法
  • Mysql用存储过程和事件每月定时创建一张数据库表
  • 深度理解链式前向星
  • python内置函数每日一学 -- any()
  • 如何排查 Inodes 使用太多的问题
  • VMware三个版本workstation、server、esxi的区别
  • 对软件测试的认识误区
  • 看不见的战斗——阿里云护航世界杯直播容灾实践
  • 《Java8实战》-第四章读书笔记(引入流Stream)
  • 【挥舞JS】JS实现继承,封装一个extends方法
  • ABAP的include关键字,Java的import, C的include和C4C ABSL 的import比较
  • Dubbo 整合 Pinpoint 做分布式服务请求跟踪
  • js
  • NLPIR语义挖掘平台推动行业大数据应用服务
  • PermissionScope Swift4 兼容问题
  • select2 取值 遍历 设置默认值
  • WordPress 获取当前文章下的所有附件/获取指定ID文章的附件(图片、文件、视频)...
  • 后端_MYSQL
  • 前端技术周刊 2019-02-11 Serverless
  • 如何将自己的网站分享到QQ空间,微信,微博等等
  • 一些css基础学习笔记
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • ionic异常记录
  • 国内开源镜像站点
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 扩展资源服务器解决oauth2 性能瓶颈
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​第20课 在Android Native开发中加入新的C++类
  • # Swust 12th acm 邀请赛# [ E ] 01 String [题解]
  • (1)Nginx简介和安装教程
  • (day6) 319. 灯泡开关
  • (Redis使用系列) Springboot 使用redis实现接口Api限流 十
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (三)mysql_MYSQL(三)
  • (五)MySQL的备份及恢复
  • (学习日记)2024.01.09
  • (一一四)第九章编程练习
  • (原)记一次CentOS7 磁盘空间大小异常的解决过程
  • (转) SpringBoot:使用spring-boot-devtools进行热部署以及不生效的问题解决
  • (转)菜鸟学数据库(三)——存储过程
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .NET/ASP.NETMVC 大型站点架构设计—迁移Model元数据设置项(自定义元数据提供程序)...
  • .NET6实现破解Modbus poll点表配置文件
  • .Net的DataSet直接与SQL2005交互
  • .net访问oracle数据库性能问题
  • .NET开源全面方便的第三方登录组件集合 - MrHuo.OAuth
  • .NET设计模式(7):创建型模式专题总结(Creational Pattern)