`
guoyunsky
  • 浏览: 855250 次
  • 性别: Icon_minigender_1
  • 来自: 上海
博客专栏
3d3a22a0-f00f-3227-8d03-d2bbe672af75
Heritrix源码分析
浏览量:206448
Group-logo
SQL的MapReduce...
浏览量:0
社区版块
存档分类
最新评论

一些复杂的Mysql语句

    博客分类:
  • DB
 
阅读更多

      微博:http://weibo.com/guoyunwb

     很久没写过SQL了,还记得是第一份工作的时候,做增删改查,好好的练了下SQL。后来一直做些底层的工作SQL就没怎么写过了。

      现在加入了一家创业公司,什么都要去接触下.有同事纠结于一些SQL的写法,我尝试着写下.顺便这里就记录下。这里主要基于MYSQL。

      首先创建临时表以及插入临时数据

      

DROP TABLE IF EXISTS TMP_A;
DROP TABLE IF EXISTS TMP_B;
CREATE TEMPORARY TABLE TMP_A(C1 INT, C2 INT);
CREATE TEMPORARY TABLE TMP_B(C1 INT, C2 INT);
INSERT INTO TMP_A VALUE(1,1),(2,2),(3,3);
INSERT INTO TMP_B VALUE(10,10),(20,20),(30,30);

 

 

      1.Mysql中获取行号

SELECT @i:=@i+1 AS ROW_NUMBER, A.C1,A.C2 
FROM TMP_A A,(SELECT @i:=0) FOO_A

    里面的ROW_NUMBER就是行号了

    

    2.获得多张表中的几列,并且这几张表没有映射字段,也就是说不能用传统的SELECT TMP_A.C1,TMP_A.C2,TMP_B,C1,TMP_B.C2 FROM TMP_A JOIN TMP_B ON TMP_A.XX=TMP_B.XX

    这里还是利用以上的行号去做JOIN:

SELECT AA.ROW_NUMBER,AA.C1,AA.C2,BB.C1,BB.C2 FROM 
	(SELECT @i:=@i+1 AS ROW_NUMBER, A.C1,A.C2 
		FROM TMP_A A,(SELECT @i:=0) FOO_A) AA  
INNER JOIN 
	(SELECT @j:=@j+1 AS ROW_NUMBER, B.C1,B.C2 
		FROM TMP_B B,(SELECT @j:=0) FOO_B) BB
ON 
AA.ROW_NUMBER = BB.ROW_NUMBER;

 

 更多技术文章、感悟、分享、勾搭,请用微信扫描:

2
1
分享到:
评论

相关推荐

    mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql in

    mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql insert语句mysql ...

    mysql修改语句 mysql语句用法,添加、修改、删除字段

    mysql修改语句 mysql语句用法,添加、修改、删除字段mysql语句用法,添加、修改、删除字段mysql语句用法,添加、修改、删除字段mysql语句用法,添加、修改、删除字段mysql语句用法,添加、修改、删除字段mysql语句用法,...

    Oracle Sql语句转换成Mysql Sql语句

    本项目提供了一个Java源码工具,能够帮助用户便捷地将Oracle SQL语句转换为MySQL SQL语句。 Oracle SQL与MySQL SQL的主要差异在于以下几个方面: 1. **数据类型**:Oracle支持的数据类型如NUMBER、LONG、RAW等在...

    mysql语句转postgres的工具

    在这个过程中,`MysqlToPostgresUtil`工具扮演着重要的角色,它能帮助我们将MySQL的DDL(Data Definition Language)语句转换为PostgreSQL兼容的格式,从而简化迁移过程。 MySQL和PostgreSQL虽然都是关系型数据库...

    易语言mysql语句拼接

    易语言mysql语句拼接源码,mysql语句拼接,初始化,置表名,where,get_one,get_array,save,update,断开,new,条件_文本,条件_数值,取条件,插入_文本_数据,取插入_表,取插入_值,插入_整数_数据,修改_文本,修改_数值,取修改...

    MySQL语句大全(个人整理)

    MySQL 语句大全 MySQL 语句大全是数据库管理系统中最基本也是最重要的一部分。以下是 MySQL 语句大全的知识点总结: 数据库操作 * 显示数据库:使用 `show databases` 语句可以显示当前 MySQL 服务器中的所有...

    mysql 语句大全

    create view 语句用于创建一个新的视图,用于简化复杂的查询操作。 二、高级查询运算词 1. UNION 运算符 UNION 运算符用于组合两个结果表,并消去表中任何重复行。 2. EXCEPT 运算符 EXCEPT 运算符用于包括所有在...

    mysql建表语句

    mysql语句,mysql语句mysql语句mysql语句mysql语句mysql语句mysql语句mysql语句

    mysql语句大全.zip

    这些只是MySQL语句的基本概念,实际应用中还有更多复杂的操作,如存储过程、触发器、游标等。在学习和使用MySQL时,理解并熟练掌握这些基础语句是至关重要的,它们构成了数据库操作的基础。通过"mysql语句大全.pdf...

    mysql批量修改语句

    mysql批量语句,传入list 批量修改mysql批量语句,传入list 批量修改mysql批量语句,传入list 批量修改

    Excel生成MYSQL建表语句

    标题中的“Excel生成MYSQL建表语句”是指利用JAVA编程技术,通过读取预先设计好的Excel模板,自动生成对应的MySQL数据库建表语句的过程。这个过程通常涉及到数据处理、文件读写以及数据库操作等核心技能。 首先,让...

    常用MySQL语句大全

    资源名称:常用MySQL语句大全资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    java实体转mysql建表语句

    为了从Java实体类自动生成MySQL建表语句,开发者可以使用一些工具或库,如`JPA`的`Metamodel`API,或者开源项目如`MyBatis Generator`。这些工具能够解析Java源代码,从中提取实体类信息并生成相应的SQL语句。 4. ...

    MYSQL语句写入.zip_MYSQL语句写入

    本压缩包文件“MYSQL语句写入.zip”包含了关于如何在MySQL中进行基本的写入操作的示例程序,特别是文件“MYSQL语句写入.vi”,这可能是一个Visual Interface(VI)编程环境下的代码片段,用于演示如何执行MySQL语句...

    MYSQL语句复杂查询大全

    自己总结的Mysql语句,做了一个大项目,把所有的语句全部整合起来了,分享出来

    oracle到mysql建表语句迁移

    oracle向mysql建表语句的迁移。 直接表结构的生成sql脚本

    mysql语句格式化工具(php)

    MySQL语句格式化工具在IT行业中扮演着重要的角色,尤其对于数据库管理员和开发人员来说,它们可以帮助优化SQL代码的可读性和维护性。本工具基于PHP实现,专注于将杂乱无章的SQL查询语句转化为整洁、易读的格式。在...

    Mysql的表对象Sql语句转换单表,转换成Oracle创建表sql

    标题提到的"‘Mysql的表对象Sql语句转换单表,转换成Oracle创建表sql’"是一个处理这种转换的工具或过程。 首先,让我们理解这个过程的一般步骤: 1. **数据迁移需求分析**:在开始转换之前,了解源MySQL表的结构...

    mysql和oracle和sql语句

    "我的MYSQL语句命令.txt"可能涵盖MySQL的命令,如创建表、索引、备份、恢复等操作,以及DML和DCL(Data Control Language)语句。 "sql2000数据库表的创建.txt"可能涉及SQL Server 2000中创建表的语法,包括定义...

    一千行MySql语句

    一千行MySql语句一千行MySql语句一千行MySql语句一千行MySql语句一千行MySql语句

Global site tag (gtag.js) - Google Analytics