SELECT
TO_CHAR(ADD_MONTHS(SYSDATE,-LEVEL+1),‘YYYY-MM‘) MONTH ,
TO_CHAR(LAST_DAY(ADD_MONTHS(SYSDATE,-LEVEL+1)),‘DD‘) DAY FROM DUAL
CONNECT BY LEVEL <=12
昨天去一家公司面试,被这道题难住了,哎,又失去一次好的机会. 回来 之后就再想这个问题 表结构及数据如下: 实现的sql语句: 刚开始的实现是 select * from student a where a.id in (SELECT b.id from student b where b.classId=a.classId ORDER BY grade DESC LIMIT 0,3) ;看起来没毛病,其实一大堆,第一 对于mysql来说,in(里面不能使用limit) 有语法错误,第二 前三名
--只是加了固定日期,可以根据需求给成变量形式(BY 少年工藤) -思路:根据日期区间循环判断每一天是周日(1).周六(7)不变,其他加1 1 DECLARE @DAY DATE,@COUNT INT 2 SET @DAY='20150101' 3 SET @COUNT=0 4 WHILE @DAY<='20151231' 5 BEGIN 6 SET @COUNT=@COUNT+( 7 CASE DATEPART(WEEKDAY,@DAY) WHEN 1 THEN 0 8 WHEN 7 THEN
去年写的比较长的SQL,虽然现在不怎么写了.发在博客上面纪念一下. 计算公交驾车分担率,逻辑如下 早上6点到晚上9点早高峰,晚上16:30-19:30晚高峰,其余时间平峰. 根据OD五分钟的公交的出行人数(人数是之前表中算好的),按照高峰类型,是否工作日,某个区域公交出行的人数.某个区域公交人数除以总人数就是公交的分担率. drop table if exists bus_qy_fdl_jc;CREATE TABLE IF NOT EXISTS bus_qy_fdl_jc ( rq STR
创建用到的表的SQL CREATE TABLE [dbo].[emp_pay]( [employeeID] [int] NOT NULL, [base_pay] [money] NOT NULL, [commission] [decimal](2, 2) NOT NULL ) ON [PRIMARY] 生成的表,及表中的数据: --方法一 select top 1 * from ( SELECT TOP 2 * FROM [dbo].[emp_pay] WHERE base_pay = 500
Name chengji fengshu张三 数学 75张三 语文 81李四 数学 90李四 语文 76王五 数学 81王五 语文 100王五 英语 90 SQL Server: select distinct [Name] from [表] where [Name] not in ( select [Name] from [表] where [fengshu]<=80) 或者 select distinct name from A minus select name from A where