我有一个遭遇表(相关的列名: enc_id (guid)和enc_nbr (int))我有一个encounter_notes表(enc_id (guid))
我希望生成一个enc_nbr列表,其中相关的enc_id在encounter_notes中显示10次或更多次。
我试过的是:
select count(*) from encounters
where enc_id in (select count(enc_id) from encounter_notes having count(enc_id)>9)
这会产生以下错误:
操作数类型冲突: Operand标识符与int不兼容
我正在做一些SQL作业,在这个问题上我走进了死胡同,我希望有人能指出我到底做错了什么。
SELECT Name,
(SELECT Name
FROM City
WHERE City.CountryCode = Country.Code) AS 'city',
(SELECT Population
FROM City
WHERE City.CountryCode = Country.Code) AS 'city_population'
FROM Country
WHERE Region IN ('Weste
使用条件从另一个表的列填充列时
UPDATE EVENT E
SET TIMESTART = (SELECT TIMESTART FROM EVENTSTEPS WHERE STEPNUMBER=1)
WHERE EVENTREF = (SELECT EVENTREF FROM EVENTSTEPS);
我在10g中得到了这个错误:
ORA-01427:单行子查询返回多行。
如果我想从其他表列填充表的列,我不知道应该做什么。有人能帮我吗?谢谢。
在这个SQL查询中:
SELECT * FROM CallRecords
WHERE DNIS = '3216547'
ORDER BY date DESC
但是在DNIS ='‘的WHERE语句中,我想取3216547,但是让它看看另一个表,其中我有一个不同DNIS的列表,例如:
3216547
9874560
7418523
因此,通常情况下,声明将是:
SELECT * FROM CallRecords
WHERE (DNIS = '3216547' OR DNIS = '9874560' DNIS = '741852
我有一个数据库,其中有时为"GHS_ItemStoreHandle“表中的特定项目编号定义语言条目,有时则不定义。为什么第一个查询比第二个查询返回的项目少?两者返回的行数不应该都等于"Language“表中活动语言的数量吗?
SELECT l.NativeName, l.Id, i.ItemNumber, i.StoreHandle FROM Language l
LEFT JOIN GHS_ItemStoreHandle i ON l.Code = i.Lang_Code
WHERE l.Active = 1 AND
(i.ItemNumber = '
我必须使用SQL从WordPress表中获取一些数据,但是我没有机会嵌套这两个查询。提前感谢! 查询1:此查询获取按语言过滤的wp_post (WPML插件)的所有数据。返回类似于wp_posts表的内容 SELECT *
FROM wp_posts
JOIN wp_icl_translations t ON wp_posts.ID = t.element_id
AND t.element_type = CONCAT('post_', wp_posts.post_type)
WHERE wp_posts.post_type = 'post'
A
我有一张表,里面有一张记录列表。每次迭代时,必须从一个特定的偏移量开始,选择其中的一个随机集。每一行都有被挑选的机会(例如,新的或不经常挑选的行被挑选得更多)。
但是,某些东西不起作用,导致返回不满足使用别名rand()的条件的行。
我试图使用以下查询:
select
id,
probability,
rand() rolledChance
from records
where id > :offset
having rolledChance < probability;
其中,:offset是准备好的语句参数,是该用户在最后一次迭代中扫描的最后一个id。
我有一家商店,里面有物品和商品组。
我还得到了一些额外的项目,其中一个应该随机选择,以显示它的购物车概述,如果一个没有在购物车准备好。
也可以有链接到items组的项。如果没有链接到购物车中的项目,我想要其中之一,在购物车内没有被随机选择。
我在表item2item中保存项之间的关系
itemid INT
additional_item_id INT
我在表group2item中保存组和项之间的关系。
groupid INT
additional_item_id INT
为了使它更简单,让我们假设我的item表如下所示:
itemid INT
name VARCHAR(100)
以下是我试图
我正在尝试显示我的数据库中所有用户的完整列表,以及来自第二个表的额外信息,这取决于他们在第二个表中是否有记录 我正在使用MySQL,我尝试了几个左连接/右连接联合组合,但都不起作用 SELECT users.id, users.name, success.URL_ID, success.docreqid FROM users
LEFT JOIN success ON users.id = success.userid
where docreqid IS NULL
union
SELECT users.id, users.name, success.URL_ID, success.docreq
我正在通过一个在线教程在这里,我很难理解他们的解决方案的Q6到Q8。答案链接如下:
从本质上讲,我很难理解/描绘突出显示的语句的作用。world x和world y是完全相同的表。任何指导都将不胜感激。
SELECT continent, name, area FROM world x
WHERE area >= ALL
(SELECT area FROM world y
WHERE y.continent=x.continent)
当我执行以下语句时,我收到一条错误消息:
UPDATE dept d
SET city = ALL (SELECT city FROM locations l
WHERE d.location_id = l.location_id);
当我摆脱所有运算符时,成功。
UPDATE dept d
SET city = (SELECT city FROM locations l
WHERE d.location_id = l.location_id);
谁能告诉我"ALL“运算符是什么?
假设我有这个表,并且我试图从我的列(如'aa‘)中匹配一个子字符串到一个列表或数组('aaa,bbb,'ccc','aab'),那么我该怎么做呢?
当我期望至少有1行包含“aa”的列col时,我尝试了这些方法,没有查询的结果:
SELECT * FROM my_table WHERE col IN ('aaa', 'bbb', 'ccc', 'aab');
SELECT * FROM my_table WHERE col = ANY(ARRAY['aaa', '
我已经阅读了许多来自SO的帖子,我理解where子句和on子句中过滤的区别。但这些示例中的大多数都是在右表上进行过滤(当使用左连接时)。如果我有如下查询:
select * from tableA A left join tableB B on A.ID = B.ID and A.ID = 20
返回值不是我所期望的。我认为它首先过滤左边的表,只获取ID = 20的行,然后使用tableB进行左连接。
当然,这在技术上应该与执行以下操作相同:
select * from tableA A left join table B on A.ID = B.ID where A.ID = 20
但我认为
重新设计数据库布局,我遇到了一个路障:
现在命名为Items_Old的原始表具有以下3列重要内容:
Name | Width | Length
此后,我制作了一个名为ItemSizes的新表:
ID | Width | Length
最后一个名字是Items:
Name | SizeID
我试图弄清楚如何从SizeID表中选择ItemSizes表到Items表中
where Items_Old.Name = Items.Name and Items_Old.Width = ItemSizes.Width
AND Items_Old.Length = ItemSizes.Lengt
我有一个in列表,我需要一个查询来返回指定表中不存在的in。我知道,在SQL中,您可以这样做:
select *
from (
values (4),(5),(6)
) as v(id)
where not exists (select *
from images i
where i.id = v.id);
(从这个答案:)
但我正在尝试使用JPA @Query,并将列表作为参数传递,而它似乎并不喜欢这个参数。
SELECT t.id
FROM :ids AS t(id)
WHERE NOT EXISTS
([Nested select clause])
使用
Li
我有一个附加的查询
INSERT INTO SPLIT_EXPORT_X2_LOANNOTPRESENT
SELECT SPLIT_EXPORT_X2_2.*
FROM SPLIT_EXPORT_X2_2, IMPORT_CSV
WHERE (((SPLIT_EXPORT_X2_2.coll_key) Not In (Select [LoanIdentifier] from [IMPORT_CSV])));
根据贷款标识符,它应该追加SPLIT_EXPORT_X2_2表中没有出现在IMPORT_CSV中的任何内容。
X2表中有许多列,我需要它们全部附加。
作为问题的一个例子,如果IMPORT_
我不太明白这一点:
我有两个表;第一个表名为EthnicGroup;这个表存储了国家代码、种族名称和该民族的百分比。
在名为Country的第二个表中,我存储了以下内容: Name (国家的名称)、Code (该国家的代码)以及其他一些内容,但这与这个问题无关
通过以下查询,我从EthnicGroup表中选择了国家代码,这些国家代码在各自的国家中具有超过7个不同的种族。
SELECT
country
FROM
EthnicGroup
GROUP BY country
HAVING (COUNT(*) > 7)
ORDER BY country
使用下面的代码,我得到了下
我想要一个包含内容的列的列表。所以我试了一下。我将检查数据库中的每个字段,找出其中哪些字段没有内容。
$arrAllField是可用字段的列表
$strTable是我查找的表。
foreach ($arrAllField as $arrField)
{
$Result = $this->Database->prepare("SELECT * FROM ".$strTable." WHERE ".$arrField." <> '' AND ".
我有一个简单的查询,它运行大约5秒,返回大约500条记录,但是为什么我尝试在复合语句中使用它,MySQL就挂起了
SELECT DISTINCT ARTIST_ID FROM WORK
GROUP BY ARTIST_ID
HAVING AVG(WORK_MILLIS_VIEWED) > 10
然而,下面的查询永远不会结束。根据进程列表,它只是创建一个临时表,尽管它应该只比子查询运行的时间稍长一些,因为艺术家表非常小。
SELECT ARTIST_NAME FROM ARTIST
WHERE ARTIST_ID IN (SELECT DISTINCT ARTIST
假设下表如下:
CREATE TABLE X (x_name VARCHAR(100));
CREATE TABLE Y (y_name VARCHAR(100));
INSERT INTO X VALUES ('blue');
INSERT INTO X VALUES ('red');
INSERT INTO Y VALUES ('blue');
其结果是:
+---------+ +---------+
| Table X | | Table Y |
+---------+ +---------+
|
我有一张有字母数字代码的桌子。在这个特殊的例子中,我不关心本质上是字母数字的代码,只关心那些包含整数的代码。我编写了一个小查询来查找我需要的代码子集:
select CAST(icd as float) as icd
from
(
select i.icd
from icd as i
where icd like '952%' or icd like '806%' or icd like '3440%' or icd like '3441'
)t
这将返回所需代码的列表。但是,当我尝试使用where子句时:
w
我想知道是否有其他方法可以获得表1中的所有记录(用户)和表2中的所有元数据(user_meta),我现在使用的方式是:
SELECT
u.id,
u.username,
u.email,
r.role,
(SELECT val FROM user_meta WHERE id_parent = u.id AND attr = 'sidebar_color' LIMIT 1) AS sidebar_color,
(SELECT val FROM user_meta WHERE id_parent = u.id AND attr = 'profile_pic'
我需要为查询‘制造’记录,但同时,限制从'lookup‘表返回的值的列表。
有没有一种方法可以在不使用内联视图的情况下使用“过滤”交叉连接?
此语法按预期工作(我得到了想要的结果):
SELECT E.ID,
M.VALUE,
MT.ID, MT.NAME
FROM ENCOUNTER E
CROSS JOIN (
SELECT ID, NAME
FROM MEASUREMENT_TYPE
WHERE ID IN ('6941','6946')
) MT
LEF
在SAS中
我有一个proc-sql步骤,用来创建宏变量来执行一些列表处理。
我遇到了一个令人困惑的步骤,使用case语句而不是where语句会导致结果数据集的第一行是空字符串('')
这两个表中的任何一个字段中都没有包含空字符串。
以下是两个示例SQL步骤,为了简单起见,去掉了所有的宏业务:
create table test as
select distinct
case
when brand in (select distinct core_brand from new_tv.co
此查询:
SELECT "Nume", "Prenume" FROM public."Personal"
WHERE "Cod_angajat"=(SELECT "Cod_angajat" FROM public."Consultati");
生成此错误:
ERROR: more than one row returned by a subquery used as an expression
********** Error **********
ERROR: more than one ro
我对两个MDX语句有问题,第一个语句给出了正确的结果,但第二个语句与预期不同。
由于MDX是动态构建的,我宁愿使用第二个。
create calculated member [Sejours Ambulatoire] as sum([Ambu].[Ambu].[Ambu].[Ambulatoire], NbSejours)
create calculated member [Taux Ambulatoire] as IIF( [Ambu].[Ambu].current is [Ambu].[Ambu].[Non Ambulatoire], 0, divN([Sejours Ambulatoir
table A
uid
uname
temp table B
uid
uname
表B不是真正的表,而是子查询的结果,如
select uid, uname
from tableC left join tableD on tableC.pid = tableD.pid
where tableC.qid = tableD.qid
group by uid;
我想更新set A.uname = B.uname,其中A.uid = B.uid
我怎样才能用MySQL做到这一点呢?
背景
我有一个用OrientDB中的图形表示的模型。该模型由几个类组成,其中包括A和B。类与关系has连接,作为从A到B的边缘。边缘还将A连接到其他类:
A ---has--> B
A ---has--> C
问题
如果B的属性具有具有给定RecordID的A的has边缘,则需要更新它的属性。
我的解决方案
目前,我正在选择从给定的has开始的属于B类的所有边的目标/输出顶点。这是可行的,但我觉得我错过了一个更简单的解决方案。
UPDATE (SELECT expand(out('has')[@class = 'B']) FROM #11:1) SE
我有一个包含4个表的PostgreSQL数据库-表A、表B、表C和表D。表A有三列,它们是来自其他三个表的ID。
如下所示:
TABLE A
--------------------------
| id | B_id | C_id | D_id |
---------------------------
我已经在表B、C、D中有几千行数据,现在想要为表A生成一个插入脚本,方法是根据某些条件从其他3个表中选择数据。
我尝试的方法如下:
INSERT INTO A (B_id, C_id, D_id) VALUES ((SELECT id FROM B WHERE CONDITION), (SE