常用SQL语句(嵌套子查询/随机等等)详细整理

1.SQL 插入语句得到自动生成的递增ID值


代码如下:

insert into Table1(Name,des,num) values ('ltp','thisisbest',10);
select @@identity as 'Id'

2.实现是1 或0 想显示为男或女


代码如下:

select name,Sex=(case Sex when '1' then '男' when '0' then '女' end) from Tablename

3.嵌套子查询


代码如下:

select a,b,c from Table1 where a IN (select a from Table2)

4.显示文章、提交人和最后回复时间


代码如下:

select a.title,a.username,b.adddate from tablename a,(select max(adddate) adddate from tablename where tablename.title=a.title) b

5.随机提取条记录的例子


代码如下:

SQL Server:Select Top 10 * From Tablename Order By NewID()

Access:Select Top 10 * From Tablename Order By Rnd(ID)

Rnd(ID) 其中的ID 是自动编号字段,可以利用其他任何数值来完成,比如用姓名字段UserName

Select Top 10 * From 表Order BY Rnd(Len(UserName))

MySql:Select * From 表Order By Rand() Limit 10

6.在同一表内找相同属性的记录


代码如下:

select UserID from Accounts_Users where UserName is not null group by UserID having count (*)>1

7.查询类别所有的产品对应数据


代码如下:

SELECT CategoryName,ProductName FROM Categories LEFT JOIN Products ON Categories.CategoryID = Products.CategoryID;

8.按范围查询编号在2 到5 之间的用户信息


代码如下:

select * from UserValue where UserID between 2 and 5;

9.日程安排提前5 分钟提醒


代码如下:

Select * from TabSchedule where datediff(minute,getdate(),开始时间)<5

10.得出某日期所在月份的最大天数


代码如下:

SELECT DAY(DATEADD(dd, -DAY('2008-02-13'),DATEADD(mm, 1, '2008-02-13'))) AS 'DayNumber'

11.按姓氏笔画排序


代码如下:

Select * From TableName Order By CustomerName Collate Chinese_PRC_Stroke_ci_as

12.通配符的一些用法


代码如下:

1.select * from tablename where column1 like '[A-M]%' 这样可以选择出column 字段中首字母在A-M 之间的记录
2.select * from tablename where column1 like '[ABC]%' 这样可以选择出column 字段中首字母是A 或者B 或者C 的记录
3.select * from tablename where column1 like '[A-CG]%' 这样可以选择出column 字段中首字母在A-C 之间的或者是G 的记录
4.select * from tablename where column1 like '[^C]%' 这样可以选择出column 字段中首字母不是C 的记录

13.复制表结构(只复制结构,源表名:a,目标表名:b)


代码如下:

select * into b from a where 1<>1 或 select top 0 * into [b] from [a]

14.复制表数据(复制数据,源表名:a,目标表名:b)


代码如下:

insert into b(Name,des,num) select Name,des,num from Table1;

(0)

相关推荐

  • SQL学习笔记八 索引,表连接,子查询,ROW_NUMBER

    索引 经常要查询的语句,则给它建一个索引 表连接 select T_Oders as o join T_Customers as C on o.CustomerId = c.Id 子查询 单值子查询 单列多值子查询 ROW_NUMBER()函数 ROW_NUMBER() OVER(ORDER BY Fsalary DESC)

  • SQL编程之子查询及注意事项

    当一个查询是另一个查询的条件时,称之为子查询.子查 询可以使用几个简单命令构造功能强大的复合命令.子查询最常用于SELECT-SQL命令的 WHERE子句中.子查询是一个 SELECT 语句,它嵌套在一个 SELECT.SELECT...INTO 语句.INSERT...INTO 语句.DELETE 语句.或 UPDATE 语句或嵌套在另一子查询中. 语法:select ....from 表1 where 列1 > (子查询) 外面的查询成为父查询,圆括号嵌入的查询成为称为子查询.SQL Ser

  • 浅谈MySQL中的子查询优化技巧

    mysql的子查询的优化一直不是很友好,一直有受业界批评比较多,也是我在sql优化中遇到过最多的问题之一,你可以点击这里 ,这里来获得一些信息,mysql在处理子查询的时候,会将子查询改写,通常情况下,我们希望由内到外,也就是先完成子查询的结果,然后在用子查询来驱动外查询的表,完成查询,但是恰恰相反,子查询不会先被执行:今天希望通过介绍一些实际的案例来加深对mysql子查询的理解: 案例:用户反馈数据库响应较慢,许多业务动更新被卡住:登录到数据库中观察,发现长时间执行的sql: | 10437

  • 对MySQL子查询的简单改写优化

    使用过oracle或者其他关系数据库的DBA或者开发人员都有这样的经验,在子查询上都认为数据库已经做过优化,能够很好的选择驱动表执行,然后在把该经验移植到mysql数据库上,但是不幸的是,mysql在子查询的处理上有可能会让你大失所望,在我们的生产系统上就由于碰到了这个问题: select i_id, sum(i_sell) as i_sell from table_data where i_id in (select i_id from table_data where Gmt_create

  • 详解MySql基本查询、连接查询、子查询、正则表达查询

    查询数据指从数据库中获取所需要的数据.查询数据是数据库操作中最常用,也是最重要的操作.用户可以根据自己对数据的需求,使用不同的查询方式.通过不同的查询方式,可以获得不同的数据.MySQL中是使用SELECT语句来查询数据的.在这一章中将讲解的内容包括. 1.查询语句的基本语法 2.在单表上查询数据 3.使用聚合函数查询数据 4.多表上联合查询 5.子查询 6.合并查询结果 7.为表和字段取别名 8.使用正则表达式查询 什么是查询? 怎么查的? 数据的准备如下: create table STUD

  • SQL Server高级内容之子查询和表链接概述及使用

    1.子查询概念 (1)就是在查询的where子句中的判断依据是另一个查询的结果,如此就构成了一个外部的查询和一个内部的查询,这个内部的查询就是自查询. (2)自查询的分类 1)独立子查询 ->独立单值(标量)子查询(=) 复制代码 代码如下: Select testID,stuID,testBase,testBeyond,testPro from Score where stuID=( select stuID from Student where stuName='Kencery' ) ->

  • 详细讲述MySQL中的子查询操作

    继续做以下的前期准备工作: 新建一个测试数据库TestDB: create database TestDB; 创建测试表table1和table2: CREATE TABLE table1 ( customer_id VARCHAR(10) NOT NULL, city VARCHAR(10) NOT NULL, PRIMARY KEY(customer_id) )ENGINE=INNODB DEFAULT CHARSET=UTF8; CREATE TABLE table2 ( order_id

  • 使用SQL Server数据库嵌套子查询的方法

    很多SQL Server程序员对子查询(subqueries)的使用感到困惑,尤其对于嵌套子查询(即子查询中包含一个子查询).现在,就让我们追本溯源地探究这个问题.  有两种子查询类型:标准和相关.标准子查询执行一次,结果反馈给父查询.相关子查询每行执行一次,由父查询找回.在本文中,我将重点讨论嵌套子查询(nested subqueries)(我将在以后介绍相关子查询).  试想这个问题:你想生成一个卖平垫圈的销售人员列表.你需要的数据分散在四个表格中:人员.联系方式(Person.Contac

  • 常用SQL语句(嵌套子查询/随机等等)详细整理

    1.SQL 插入语句得到自动生成的递增ID值 复制代码 代码如下: insert into Table1(Name,des,num) values ('ltp','thisisbest',10); select @@identity as 'Id' 2.实现是1 或0 想显示为男或女 复制代码 代码如下: select name,Sex=(case Sex when '1' then '男' when '0' then '女' end) from Tablename 3.嵌套子查询 复制代码 代

  • Oracle在PL/SQL中使用子查询

    目录 一.概述 1.单行子查询(子查询只返回一行) 2.多行单列子查询(子查询返回多行) 3.多列子查询 二.在DDL语句中使用子查询 1.create table 2.create View 3.create materialized view 建立实体化视图 三.在DML语句中使用子查询 1.INSERT 2.UPDATE 3.DELETE 四.WITH语句 五.相关子查询. 一.概述 在一个SQL语句中嵌套另一个SQL语句成为子查询.包括单行子查询,多行子查询,多列子查询. 注意,当在DD

  • 常用SQL语句优化技巧总结【经典】

    本文实例总结了常用SQL语句优化技巧.分享给大家供大家参考,具体如下: 除了建立索引之外,保持良好的SQL语句编写习惯将会降低SQL性能问题发生. ①通过变量的方式来设置参数 好: stringsql = "select * from people p where p.id = ? "; 坏: stringsql = "select * from people p where p.id = "+id; 数据库的SQL文解析和执行计划会保存在缓存中,但是SQL文只要有

  • 史上超强最常用SQL语句大全

    目录 DDL(Data Definition Language)数据定义语言 一.操作库 二.操作表 一.增加 insert into 二.删除 delete 三.修改 update DQL(Data Query Language)数据查询语言 一.基础关键字 二.排序查询 order by 三. 聚合函数:将一列数据作为一个整体,进行纵向的计算. 四. 分组查询 grout by 五. 分页查询 六.内连接查询: 1.隐式内连接:使用where条件消除无用数据 2.显式内连接 七.外连接查询

  • Mysql数据库之常用sql语句进阶与总结

    本文实例讲述了Mysql数据库之常用sql语句.分享给大家供大家参考,具体如下: 前面讲述了Mysql sql基本语句.这里继续总结一下SQL语句的进阶内容. SQL语句进阶 1.查询字段: ----查询所有字段 select * from 表名; ----查询指定字段 select 字段名,字段名- from 表名; ----多数据表连接查询时 select 表名.字段名,表名.字段名 - from 表名; ----使用as给表起别名 select 表别名.字段名 from 表名 as 表别名

  • oracle常用sql语句

    正在看的ORACLE教程是:oracle常用sql语句.SQL*Plus system/manager 2.显示当前连接用户 SQL> show user 3.查看系统拥有哪些用户 SQL> select * from all_users; 4.新建用户并授权 SQL> create user a identified by a;(默认建在SYSTEM表空间下) SQL> grant connect,resource to a; 5.连接到新用户 SQL> conn a/a

  • 50个常用sql语句 网上流行的学生选课表的例子

    50个常用sql语句 Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题: 1.查询"001"课程比"002"课程成绩高的所有学生的学号; select a.S# from (select s#,score from SC where C#='001') a,(select s#,score from SC where

  • Mysql中的嵌套子查询问题

    目录 Mysql嵌套子查询 在WHERE子句中使用子查询 单行单列子查询 单行多列子查询. 多行单列子查询 FROM子查询: 总结: select子查询 用子查询 用子查询 Mysql嵌套子查询 子查询就是指的在一个完整的查询语句之中,嵌套若干个不同功能的小查询,从而一起完成复杂查询的一种编写形式,为了让读者更加清楚子查询的概念. 子查询返回结果子查询可以返回的数据类型一共分为四种: 单行单列:返回的是一个具体列的内容,可以理解为一个单值数据: 单行多列:返回一行数据中多个列的内容: 多行单列:

随机推荐