问题标签 [in-subquery]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - 下面的查询没有给我预期的结果请帮助我
选择查询必须为它获得的每个值显示单独的行,但是在执行此查询时,它仅从 IN 子句中使用的子查询中产生第一个值。
子查询产生逗号分隔值
有人可以帮我找到解决这个问题的方法吗?
sql - 使用 HAVING 和 WHERE 查询
我正在尝试创建一个将结合以下两个查询的查询。
我尝试将它们放入 IN 但它返回了一个语法错误,我无法弄清楚如何修复。我尝试仅删除 HAVING 并组合查询,但随后它说它无法弄清楚是什么distance
。任何帮助表示赞赏。谢谢。
输出:[campgroundid, name, type, wifi, distance] [1,camp ABC, private, 1, 1.34 mi] [2,camp XYZ, private, 1, 4.44 mi]
mysql - MySQL - 如何将别名语法添加到子查询
我是 MySQL 新手,但它的语法仍然存在问题。我有这个查询:
这给了我这个错误:
IN 子句有效:
我认为我的问题与第二个表别名有关。有人可以告诉我我做错了什么吗?
sql - 使用 SQL 获取不同的最大日期
我不确定如何为我的问题命名,但这是我想要做的:
给定 pc_tmppl_tbl
我希望它返回 pc_tmppl_crtdt 的最大日期及其相应的 pc_tmppl_attach 所以
我一直在尝试子查询,但还没有完全找到答案,任何帮助将不胜感激。
mysql - MySQL返回多行作为列
我对 SQL 有点生疏,我有一张简单的表
我想以这种方式获得几列
请注意,这与MySQL 不同:从内联子查询中返回多个列,因为我只有一个表,并且我想将第一列映射为结果中的第一行。
我已经读过像 SELECT ... WHERE (col3,col4) IN (SELECT col3, col4 ...) 这样的子查询可以做到这一点,但是我遇到了类似“IN/ALL/ANY 子查询”中的未知列 col3 的错误而且我不知道如何在结果的第一行中获取列名以及如何使用 group by 添加列。有什么帮助吗?
postgresql - 我疯了吗:带有嵌套查询的 PostgreSQL IN 运算符返回意外结果
以下查询返回 2036 行:
但是下面的语句只更新了 1870 行:
这怎么可能?
编辑 1:第一个查询继续返回 166 行,第二个继续更新 0 行。
编辑2:
在下面,嵌套查询返回包含 UID 的行,但外部查询返回 0 行。
我疯了吗?
编辑 3:
@wildplasser提供的以下语句成功更新了剩余的 166 行:
但是,我仍然不明白为什么原版没有接他们。如果嵌套查询选择了 166"FooUID"
秒,为什么它们不能使用 匹配到"Foo"
表中的行IN
?
编辑 4:我想得越多,这个背景可能很重要:
这一切都发生在最近从另一台克隆的数据库服务器上。我与进行克隆的 IT 人员进行了交谈,结果发现他没有关闭在原始数据库之上运行的应用程序,然后才将其关闭以进行克隆。这意味着数据库很可能在事务中被关闭(我不知道这有多不优雅)。是否有可能数据库中的某些内容处于损坏状态,导致我看到这些幻像行?
不幸的是,我无法再复制它,因为运行了 wildplasser 的修复程序。原始数据库(再次启动并为应用程序提供服务)没有我试图在副本上修复的任何无效数据,更不用说我目睹的恶作剧的任何痕迹。
我应该提一下,在运行修复程序之前,我将问题简化为最基本的荒谬:我首先从编辑 2中FooUID
的嵌套查询中选择了仍然返回 0 行。Foo
FooUID
sql - 多个值 IN
通常 IN 与一个值一起使用:
可以将它与多个值一起使用:
但是我可以删除重复项吗,例如:
我尝试使用 CTE,但它也需要子查询。
mysql - MySQL:id列周围的间隔并从具有多列的子查询返回另一个
我想从内容如下的表中运行查询:
目的是根据返回存储在for和中的内容[id-1, id+1]
的列获取间隔。子查询有效,但我想我的查询本身有问题,因为我有一个错误“操作数应该只包含一列”。我明白了,但我没有在一个查询中看到任何其他方法?id
col1
id-1
id+1
我很确定有一个非常简单的解决方案,但我暂时无法弄清楚,即使在仔细阅读了有关多列子查询的其他帖子之后......
感谢您的任何帮助 :-)
mysql - MySQL 使用 IN/FIND_IN_SET 读取子查询中的多行
我有两张桌子,位置和位置组
我要做的是返回给定 user_id 存在的所有 location_groups 的所有 location_ids。我正在使用 CSV 将 location_ids 和 user_ids 存储在 location_groups 表中。我知道这不是标准化的,但这就是数据库的样子,它超出了我的控制范围。
我目前的查询是:
现在,如果 user_id = 1 例如(因为仅返回 1 个 location_group 行),这可以正常工作,但是如果我搜索 user_id = 2,我会收到一个错误,指出子查询返回超过 1 行,这是预期的用户 2位于 2 个 location_groups 中。我理解为什么会抛出错误,我正在尝试解决它。
为了澄清在 location_groups.user_ids 中搜索 user_id 1 时,应返回 location_id 1。搜索 user_id 2 时,应返回 location_ids 1、2、3。
我知道这是一个复杂的查询,所以如果有任何不清楚的地方,请告诉我。任何帮助,将不胜感激!谢谢你。
mysql - 使用一个单元格引用另一个数据库并将两者组合在一个查询中
我试图弄清楚是否有办法获取单元格中的值并将其替换为该数字在另一个表中引用的用户的文本名称。
我查看了子查询,但我认为这不是我想要的。例如,我的查询现在以用户 ID、州、国家/地区的形式返回。还有另一个具有用户 ID 名称的表。我想查询第一个数据库,但要将 userID 替换为另一个表中的相应名称。
那可行吗?我正在使用 mySQL Workbench 进行查询。