0 0

请教一条关联查询sql0

大家好,我想写条sql,场景如下
用户表user:userid(用户id)
应用表app:appid,fee(是否免费)
用户应用使用表userapp:userid,appid


应用有收费,免费两类应用,对于免费的,用户表里所有用户都要查出来,对于收费的,必须在用户应用表里有记录的才查出来。现在我写了条sql可是不对,想请教下,多谢。。
2013年4月22日 14:01

5个答案 按时间排序 按投票排序

0 0

应用有收费,免费两类应用,对于免费的,用户表里所有用户都要查出来--->你很疯狂 

1、免费的单独查一次 就over了  不要连表 性能差

2、对于收费的,必须在用户应用表里有记录的才查出来。现在我写了条sql可是不对,想请教下,多谢。。

你要查出所有用户的能用的应用?  这是为什么?  之前给你写过查单个用户 不能满足你的需求?

2013年4月22日 15:42
0 0

select user.*,app.* from app,user where app.free is true and user.userId=? union   
 select user.*,app.* from app join user  join userapp on user.userId = userapp.userId and app.appCode = userapp.appCode where  app.free is false and user.userId = ?;

2013年4月22日 14:43
0 0

2天前,你不是刚刚问过类似的问题吗?

http://www.iteye.com/problems/94340

我穿越了?!

2013年4月22日 14:41
0 0

select user.* from user cross join app where fee='免费'

select * from userapp left join user on userapp.userid=user.userid left join app on userapp.appid=app.appid where fee='收费'

2013年4月22日 14:38
0 0

不明白说的什么意思?

是不是要用exists
http://www.cnblogs.com/mytechblog/articles/2105785.html

2013年4月22日 14:26

相关推荐

    MySQL 多表关联一对多查询实现取最新一条数据的方法示例

    本文实例讲述了MySQL 多表关联一对多查询实现取最新一条数据的方法。分享给大家供大家参考,具体如下: MySQL 多表关联一对多查询取最新的一条数据 遇到的问题 多表关联一对多查询取最新的一条数据,数据出现重复 ...

    一条sql语句关联八个表

    标题中的"一条sql语句关联八个表"涉及到的就是这种复杂的联接查询。这种查询通常用于从分布在不同表中的相关数据中提取所需信息。下面我们将深入探讨这个主题。 首先,我们了解SQL的基本联接类型: 1. **INNER ...

    SQL查询当前数据上一条和下一条的记录

    SQL查询当前数据上一条和下一条的记录,管用,仅供参考!!!

    kettle实现SQL关联查询

    "Merge Join" Step就是其中之一,它允许用户实现类似SQL中的各种类型关联查询,包括INNER JOIN、LEFT JOIN、RIGHT JOIN以及FULL JOIN。 INNER JOIN是SQL中的一种基本联接类型,它返回两个表中存在匹配的记录。在...

    oracle SQL查询工具

    oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具oracle SQL查询工具...

    一条SQL计算扑克牌24点

    一条SQL计算扑克牌24点

    一个完整程序只有一条SQL语句

    一条SQL语句可以是简单的选择查询,也可以是复杂的联接、子查询或事务操作。 在C#中,我们可以使用ADO.NET库来与数据库进行交互。ADO.NET提供了一组对象模型,如SqlConnection、SqlCommand、SqlDataAdapter和...

    sqlserver数据库关联mysql

    在SQL Server数据库中关联并操作MySQL数据库是一种跨数据库平台的数据集成技术,这使得用户能够从SQL Server环境中查询、更新或管理MySQL中的数据。本篇文档将深入探讨这一主题,包括如何建立连接、配置ODBC驱动以及...

    Oracle sql语句多表关联查询

    Oracle SQL 语句多表关联查询是数据库管理系统中的一种常见查询方式,通过了解字符串和数字的比较、分组查询、HAVING 子句、查询顺序、Oracle 中的伪列、子查询和表连接等知识点,可以帮助我们更好地编写 SQL 语句,...

    oracle到sqlserver 跨库查询

    .oracle 到 SQL Server 跨库查询 Oracle 到 SQL Server 跨库查询是指通过网关工具将数据从 SQL Server 数据库中抽取到 Oracle 数据库中。这个过程需要安装和配置网关软件,并进行相应的设置和配置。 一、网关软件...

    U8 BOM全阶查询 sql

    - 在每次循环中,根据上一层级查询结果中的`cInvCode`字段,继续向下查询。 - 如果当前层级没有查询到任何结果,则跳出循环。 5. **结果展示与清理**: - 最终展示`tmpnewbomtest`表中的所有数据,并按照层级...

    VB编程源代码 71一次SQL查询中获得多个查询数值

    VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL查询中获得多个查询数值VB编程源代码 71一次SQL...

    sql 联合查询 子查询 综合查询 统计数据

    sql 联合查询 子查询 综合查询 统计数据 case when then 用法

    SQLServer的性能调优:解决查询速度慢的五种方法

    本文主要通过一下几个方面介绍:使用SQLDMV查找慢速查询、通过APM解决方案查询报告、SQLServer扩展事件、SQLAzure查询性能洞察等相关内容。本文来自博客园,由火龙果软件Anna编辑、推荐。SQLServer的一个重要功能是...

    sql联合查询

    sql联合查询的详细讲解 select * from 表A,表A子表 where 表A.FileCode = 表A子表.FileCode and 表A.ID in (select 表A子表.ID from 表A子表 where Vc_Code = '1190' AND Vc_Num ='111300' AND Er_Num ='0101')...

    SQLServer查询耗费大量资源的语句.txt

    - **sys.dm_exec_sql_text(sql_handle)**:此函数返回与指定SQL句柄关联的文本信息,包括查询的实际SQL文本。 - **sys.dm_exec_query_plan(plan_handle)**:该函数返回指定计划句柄的XML格式的查询计划。通过查询...

    Mysql查询最近一条记录的sql语句(优化篇)

    在MySQL数据库中,查询最近一条记录通常...总结来说,优化查询最近一条记录的SQL语句,关键在于减少全表扫描,利用索引以及聚合函数来提高查询效率。在处理大量数据时,应优先考虑效率更高的方法,以降低数据库的负载。

    Jmeter中JDBC request多条SQL语句使用.docx

    Prepared Select Statement和Prepared Update Statement则分别支持多条查询和更新语句的同时执行,但前者仅展示第一条查询结果,后者展示所有更新提示;Callable Statement则提供了最全面的支持,可以同时执行多条...

    一条SQL查询语句是如何执行的

    一条SQL查询语句是如何执行的

Global site tag (gtag.js) - Google Analytics