sql-面试SQL ,谁来挑战!!!

问题描述

面试SQL ,谁来挑战!!!
一个表的内容:
1 x
2 x
NA y
2 y
NA z
NA z
把他排列成
1 x
NA y
NA z
2 x
2 y
NA z

解决方案

就是把内容换换就行了;假设有c1c2c3c4c5c6六个字段
update table set c2='NAy'c3='NAz'c4='2x'c5='2y'c6='NAz' where c1='1x'

解决方案二:
假设表名为T1,字段为Content,下面的查询语句在MS SQL Server 2005上运行后就是你需要的效果 (MS SQL Server 2005以上应该也可以)。

SELECT ContentFROM T1ORDER BY ROW_NUMBER() OVER(ORDER BY Content) % 2 DESC     Content
时间: 2024-09-16 18:58:12

sql-面试SQL ,谁来挑战!!!的相关文章

一道SQL面试例题 if...else 与聚集函数

晚上回来,同学说面试遇到了一个SQL面试题目,自己做了一下,总结总结. 题目如下: 下面是产品数据表(产品id,颜色col,数量num),其中每种产品有1~2种颜色. 求每种产品各颜色的数量差值(对于只有一种颜色的保留产品总数) 解法如下: 1.先求出每种产品各颜色的数量 这个不难,直接使用group by 就可以啦.SQL语句如下:  1 select id,col,sum(num) total from chanpin group by id,col  结果: 2.求每种产品各颜色的数量差值

jpa-JPA sql 原生sql 插入数据

问题描述 JPA sql 原生sql 插入数据 看了看,好像jpa往数据库(我用的MySql)里插入数据(对象),只能采用SQL原生语句.各位谁用过这玩意么? .createNativeQuery(insert into table values());就可以么? 如果是批量插入能搞么? 多谢!

PL/SQL动态SQL(原创)

概述 使用动态SQL是在编写PL/SQL过程时经常使用的方法之一.很多情况下,比如根据业务的需要,如果输入不同查询条件,则生成不同的执行SQL查询语句,对于这种情况需要使用动态SQL来完成.再比如,对于分页的情况,对于不同的表,必定存在不同的字段,因此使用静态SQL则只能针对某几个特定的表来形成分页.而使用动态的SQL,则可以对不同的表,不同的字段进行不同的分页.这些情况的处理通常都是用动态SQL来完成. 动态SQL和静态SQL静态SQL静态SQL通常用于完成可以确定的任务.比如传递部门号调用存

.NET编程和SQL Server ——Sql Server 与CLR集成 (学习笔记整理-1)

原文:.NET编程和SQL Server --Sql Server 与CLR集成 (学习笔记整理-1) 一.SQL Server 为什么要与CLR集成 1. SQL Server 提供的存储过程.函数等十分有限,经常需要外部的代码来执行一些繁重的移植: 2.与CLR集成可将原本需要独立的程序来实现的功能迁移到SQL Server 内部进行数据操作: 3.T-SQL数据查询语言在返回数据集方面很好,但是除此之外表现不佳.与CLR的集成可解决这一问题: 4..NET的操作代码和执行的速度比T-SQL

对存储过程进行加密和解密(SQL 2008/SQL 2012)

原文 http://www.cnblogs.com/wghao/archive/2012/12/30/2837642.html 开始:  在网络上,看到有SQL Server 2000和SQL Server 2005 的存储过程加密和解密的方法,后来分析了其中的代码,发现它们的原理都是一样的.后来自己根据实际的应用环境,编写了两个存储过程,一个加密存储过程 (sp_EncryptObject),和一个解密存储过程(sp_EncryptObject),它们可以应用于SQL Server中的储过程,

卸载了sql,重新安装sql后,一直连接超时

问题描述 卸载了sql,重新安装sql后,一直连接超时 今天一时冲动卸载了SQL,在重新安装的过程中,改了端口为3307,把选择服务器类型改为Developer Machine. 然后在运行一个卸载SQL之前能运行的小程序,运行不了,说连接超时. 我已经试过网上说的那个wait_timeout,这个也试过了,没用 com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure Last pa

SQL, PL/SQL 之NUMBER数据类型

    NUMBER数据类型在Oracle中使用的较为广泛,可以存储零值,正负数,以及定长数,对于这个数据类型有个几个概念要搞清,否则容易搞混,下面给出具体描述.   1.可表示范围及存储空间    从1.0 x 10-130 到 1.0 x 10126(不包括),如果表达式或值大于1.0 x 10126,Oracle会返回错误信息    所需的存储空间为1到22个字节 2.Number类型表示法    NUMBER(p,s)   P 和S 可选     其中precision表示数字的总长度,

sql union sql union all用法 union union all效率

sql union  sql union all用法与实例教程以及,sql union union all效率 UNION 操作符用于合并两个或多个 SELECT 语句的结果集 UNION 组合多个表(或结果集)并将其作为单个结果集返回; UNION ALL 在结果中包含所有的行,包括重复行. 也就是说,使用UNION组合两个表时,将重复的记录删除:而使用UNION ALL组合两多个表时,不考虑结果集中是否存在重复记录,包括重复行. SQL UNION ALL 语法 SELECT column_

PL/SQL 下SQL结果集以html形式发送邮件

      在运维的过程中,有时候需要定时将SQL查询的数据结果集以html表格形式发送邮件,因此需要将SQL查询得到的结果集拼接成html代码.对于这种情形通常有二种方式来完成.一是直接使用cron job来定时轮询并借助os级别的邮件程序来完成.其查询结果集可以直接在SQL*Plus下通过设置html标签自动实现html表格形式.一种方式是在Oracle中使用scheduler job来定时轮询.这种方式需要我们手动拼接html代码.本文即是对第二种情形展开描述.       关于PL/SQ

sql教程:SQL SELECT DISTINCT 实例教程

sql教程:SQL SELECT DISTINCT 实例教程 本章将解释选择离散发言. 在SQL选择不同的声明 在一个表中,一些列可能包含重复的值.这不是一个问题,然而,有时你会希望只列出不同(不同的)值在桌子上. 的独特的关键字可以用来只返回独特的(不同)的价值.  SQL SELECT DISTINCT 语法. SELECT DISTINCT column_name(s) FROM table_name 来看一个distinct不重复记录的实例吧. _Id LastName FirstNam