Questions tagged «select»

SELECT是一种核心SQL语句,它从一个或多个表或行集数据的其他来源(例如视图或表值函数)中检索数据。


8
在SQL Server 2012上,select *是否仍然是一大禁忌?
在过去的日子里,它被认为是一个很大的禁忌,select * from table或者select count(*) from table因为性能受到影响。 在更高版本的SQL Server中是否仍然如此(我使用的是2012,但我想这个问题将适用于2008-2014)? 编辑:由于人们似乎在这里对我有些偏颇,所以我正在从基准/流行病的角度看待这个问题,而不是是否要做“正确”的事情(当然不是)

3
为什么此查询有效?
我有两个表,table_a(标识,名称)和table_b(标识),在Oracle 12c中说。 为什么此查询不返回异常? select * from table_a where name in (select name from table_b); 据我了解,Oracle认为这是 select * from table_a where name = name; 但是我不明白为什么呢?

7
mysqldump是否可以转储重现查询所需的数据库子集?
背景 我想提供重现select查询所需的数据库子集。我的目标是使我的计算工作流具有可重现性(就像在可重现的研究中一样)。 题 有没有一种方法可以将这个select语句合并到一个脚本中,该脚本将查询到的数据转储到新数据库中,以便可以将数据库安装在新的mysql服务器上,并且该语句可以与新数据库一起使用。除了已在查询中使用的记录以外,新数据库不应包含其他记录。 更新: 为澄清起见,我对查询结果的csv转储不感兴趣。我需要做的是转储数据库子集,以便可以将其安装在另一台计算机上,然后查询本身可以重现(并且可以针对同一数据集进行修改)。 例 例如,我的分析可能查询需要从多个(在此示例中为3个)表中进行记录的数据子集: select table1.id, table1.level, table2.name, table2.level from table1 join table2 on table1.id = table2.table1_id join table3 on table3.id = table2.table3_id where table3.name in ('fee', 'fi', 'fo', 'fum');


1
在某些情况下,在JOIN子句中使用构造可以引入优化障碍吗?
引起我注意的是,查询子句中的USING构造(而不是ON)在某些情况下可能会引入优化障碍。FROMSELECT 我的意思是这个关键词: 选择 * 从一个 加入b 使用(a_id) 仅在更复杂的情况下。 背景:此评论到这个问题。 我用这个了很多,从来没有发现过这么远。我对一个展示效果或进一步信息的链接的测试案例非常感兴趣。我的搜索工作空虚。 USING (a_id)与替代连接子句相比,完美的答案是显示性能较差的测试用例ON a.a_id = b.a_id- 如果这确实可能发生。


6
如何在MySQL SELECT子句中将整数转换为布尔值?
我是新来的,所以对我好一点。我有以下情况: 为了简单起见,我有很多表,这些表在MySQL数据库的View中表示。我的问题是,在此视图中我需要一个值来表示它是一种事件还是另一种(简单的布尔值),我尝试通过以下方法实现: `gu`.`StoppingUnitEventME` = `ese`.`MonitoringElement` AS `IsStopingEvent` 结果表示为int,因此由Entity Framework读取。问题是我确实需要一个布尔返回值,我试图通过以下方法实现: CAST((`gu`.`StoppingUnitEventME` = `ese`.`MonitoringElement`) as boolean) AS `IsStopingEvent` 这导致了一个错误,一个在MySQL Workbench中没有显示给我的错误(我只收到令人讨厌的“您在...中有一个错误”)。 你们能帮我吗? 试图在我的应用程序中解决它,但是我真的很想在数据库中解决这个问题,因为稍后它将被其他软件使用。

2
为什么SELECT *比SELECT foo快很多?
考虑一个值和哈希表,如下所示: +------------+----------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +------------+----------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | val | char(9) | NO | | NULL | | | val_hashed | char(50) | YES | | NULL | …

2
oracle-列出有权访问某些表的用户
我敢肯定这已经被问过了,但是我似乎找不到下面的相关细节。 是否有某种可以完成以下操作的预建表(我使用过dba_tab_privs,但是它是有限的,不能满足我的所有需求),如果没有人有一些查询来回答以下问题? 列出所有被分配了特定角色的用户? 列出授予用户的所有角色? 列出授予用户的所有特权? 列出某个角色赋予SELECT访问权限的表? 列出用户可以从中选择的所有表? 列出所有可以在特定表上进行SELECT的用户(通过授予相关角色或通过直接授予(即,可以在joe上进行授予选择))?该查询的结果还应显示用户通过哪个角色拥有此访问权限,或者它是否是直接授予权限。

2
同一SELECT列表中的参考列别名
我正在将旧的基于MS-Access的系统转换为PostgreSQL。在Access中,由SELECT组成的字段可以用作后面字段的方程式的一部分,如下所示: SELECT samples.id, samples.wet_weight / samples.dry_weight - 1 AS percent_water, 100 * percent_water AS percent_water_100 FROM samples; 当我在PostgreSQL中执行此操作时,Postgres会引发错误: 错误:列“ percent_water”不存在。 通过从子选择中进行选择,这是解决该问题的方法: SELECT s1.id, s1.percent_water, 100 * s1.percent_water AS percent_water_100 FROM ( SELECT samples.id, samples.wet_weight / samples.dry_weight - 1 AS percent_water FROM samples ) s1; 有没有像在第一个代码块中那样的捷径可以绕开复杂的嵌套?我也可以说100 * (samples.wet_weight / samples.dry_weight - …

5
在MySQL查询中使用反引号(`)的好处?
在MySQL中,我们可以创建带有或不带有反引号(`)符号的查询。例: SELECT * FROM TEST; SELECT * FROM `TEST`; 两者都可以在mysql-console中正常工作。 它们之间有技术上的区别吗? `相对于简单查询,使用()有什么好处?
25 mysql  select 

3
如果一列存在,如何选择特定行;如果一列不存在,如何选择所有行
我正在编写一个脚本,该脚本获取一些表的行数,但是对于某些表,我只想获取设置了标志(在本例中为active = 1)的行数。有没有一种方法可以在一个查询中做到这一点? 例如: 表中users有一个称为活动的列 表clients没有称为活动的列 我想获得其中active = 1的用户数,而只是获得客户数。 在您说“只是硬编码”之前,这是一个查询,该查询正在python脚本内进行,该python脚本可以在许多不同的数据库上运行,并且我无法知道我的脚本将选择哪些表,以及它们是否具有名为的列active。我宁愿只有一个查询来完成所有操作,而不是两个单独的查询,并依靠mysql引发错误,所以我知道要使用另一个查询。
23 mysql  select  count 

2
在另一个SELECT的WHERE子句中使用SELECT
我已经在libpq上为PostrgreSQL创建了一个远程应用程序草案。它的性能很好,但是我已经介绍了该应用程序的一般功能。对于我产生的每个最终业务结果,碰巧我调用了40 select子句(通过tcpip)。 我对SQL Server的回忆使我想起尽量减少远程应用程序与数据库之间的交互次数。分析了我的选择之后,我认为可以SELECT使用联接将这个数目减少到3个子句。但是我不记得SELECT在另一个中使用a的结果的语法SELECT。 例如: SELECT * FROM individual INNER JOIN publisher ON individual.individual_id = publisher.individual_id WHERE individual.individual_id = 'here I would like to use the results of a another select' 这另SELECT一种可能是简单的: SELECT identifier FROM another_table WHERE something='something' 这是简化的表格布局,针对不同的item_types减少了很多次...(3种完全不同的类型,因此对3种SQL查询进行了优化)。 table passage id_passage PK business_field_passage bytea table item id_item PK id_passage …


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.