下面是bigquery中有一个表的情况,如下所示。
和表中一样,我们有记录1和记录3,它们具有相同的id,但不同的first_name (例如,具有id的人更改了他的first_name),所有其他字段在记录(1和3)中都是相同的,现在我需要从这2条记录中选择一条记录,如何做到这一点。我尝试了self,但这意味着放弃了这两个记录,group_by将无法工作,因为记录不是重复的,只有Id与不同的Id是相同的。
谢谢!
我现在使用的查询是
select * from table t group by 1,2,3,4,5;
我在查询编辑器中有一个包含以下SQL的查询:
SELECT tbl_PN_Import.PN, Last(tbl_PN_Import.Master_PN) AS Master_PN
FROM tbl_PN_Import
GROUP BY tbl_PN_Import.PN
Having (((Last(tbl_PN_Import.Master_PN)) Is Not Null))
ORDER BY tbl_PN_Import.PN;`
它在查询编辑器中返回10,000+记录。
下面是示例记录的列表。我们的数据库包含与备用部件号具有一对多关系的主部件号。PN字段包含所有部件号,包括主部件号和备用部
我们正在使用Jitterbit从Salesforce查询记录,但我们遇到了一个问题。在查询条件语句中,我比较了Salesforce表中的两个字段。当我去测试查询时,它给我一个错误“绑定变量只允许在Apex代码错误的查询中”。
以下是查询的示例:
SELECT Id FROM Price_Agreement_Item__c WHERE Approved_Date__c > Last_Upload_Date__c
字段Approved_Date__c和Last_Upload_Date__c都包含在Salesforce表Price_Agreement_Item__c中。如何创建一条SOQL语句
我有一个包含两个列的链接表,用户组(用户int,组int)包含大约100亿行。每一列都有一亿个独特的值。在这两个字段上都创建索引。我必须找到用户数最多的组,它们属于指定的组。
我的疑问是
select group_id, count(*) as cnt
from usergroups GM
join (select user_id from usergroups where group_id=74437 LIMIT 100) G
on (GM.user_id=G.user_id)
group by group_id
having cnt > 10
o
我有以下SQL:
SELECT tbl_G_stats_atp.PK_G, tbl_G_stats_atp.InjuryCnt
FROM tbl_G_stats_atp
WHERE (((tbl_G_stats_atp.ID_A)=89) AND ((tbl_G_stats_atp.DATE_S)<37500))
GROUP BY tbl_G_stats_atp.PK_G, tbl_G_stats_atp.InjuryCnt;
它产生了以下结果:
+---------+-----------+
| PK_G | InjuryCnt |
+---------+-----------+
我试图对Symfony2项目中的表进行计数,其中记录需要在一个字段中匹配多个值。SQL如下所示:
SELECT * FROM posts WHERE userid IN ('3,4,1') AND open = '1';
目前,我有这样的代码:
$group = '3,4,1';
$activePosts = $dm->createQuery('
SELECT COUNT(p.id)
FROM AcmeBundle:Posts p
WHERE p.us
我有一个允许重复id的学生表,如下所示:
。
现在,在这个表中,我需要删除所有其他重复的记录,并保留id的任何一个唯一记录。
例如,如果执行delete语句,则应删除7条记录,留下2条记录,一条id为“1”,另一条id为“2”。
如下图所示:
最终预期产出
如何编写单个SQL查询来获得上述结果。
下面是我正在尝试的示例sql查询,它在sql编辑器中抛出编译时错误“意外的学生标识符”。
DELETE FROM student as a
WHERE a.sno not in(select b.sno from test.student as b group by b.id);
请帮助我找出我在查
有两个表A和B。表A与B有一对多的关系。
我想从A获取记录,从B获取相应的一条记录(如果B有一条记录),
如果表B中有多条记录,那么首先查找状态='Active‘的记录。
下面是运行在oracle中的查询,但是我们希望在AWS雅典娜中运行相同的功能,但是AWS Athena sql中不支持关联查询。Athena支持ANSI Sql。
SELECT b.*
FROM A a ,B b
WHERE a.instruction_id = b.txn_report_instruction_id AND b.txn_report_instruction_id IN
(SELECT
我有一个大约有20M行的数据集,我观察到了以下行为。
下面的查询返回错误"Response too large to return“。“id”字段在多个记录之间共享,并且“field”字段对每条记录都有一些任意值。我预计结果集应该只包含10行,远远低于查询响应限制。
SELECT id, COUNT(DISTINCT field)
FROM [my.dataset]
GROUP BY id
LIMIT 10
但是,当从COUNT聚合函数中删除DISTINCT关键字时,BigQuery会按预期返回10个结果。
SELECT id, COUNT(field)
FROM [my.datase
我有两个SQL语句,它们基本上做同样的事情,即根据一组记录的日期时间字段从表中检索最后一条记录。我使用的是数据优先实体框架模型。如何使用LINQ Lambda函数编写这两条SQL语句?
也就是说,
var u = db.AccessCodeUsage.Where(...).GroupBy(...)
而不是
var u = from a in db.AccessCodeUsage
where ...
group by ...
SQL语句:
SELECT *
FROM AccessCodeUsage a
WHERE NOT EXISTS (SELEC
我希望将actualEntries表中的所有记录插入到基于actualEntries User_IDs的uniqueEntries表中,这些记录在uniqueEntries中不存在。
我从一个包含NOT IN子查询的sql子句开始,它非常慢(在400 K记录上操作时),并将它转换为LEFT JOIN子句,但是速度没有提高。
下面是包含NOT IN子查询的原始sql子句:
INSERT INTO uniqueEntries
SELECT *
FROM actualEntries
WHERE actualEntries.User_ID NOT IN (
SELECT un
有没有人可以建议如何编写一个SQL查询来包含多行中多个字段的总和。我使用的是下面的查询,但是它总是说“select行中的字段是无效的,因为它既没有包含在聚合函数中,也没有包含在GROUP BY子句中。”
Select ClaimId,InternalICN,BilledAmt,
Sum(PayAmt) as TotPayAmt,Sum(COBAmt) as TotCOBAmt,Sum(PrePayAmt) as
TotPrePayAmt
from CAIDEnc.IntEncTracking.EncounterList
我正在尝试用一个查询连接三个表,其中一个查询的基础是Int = Json问题是,由于group_concat,查询只显示一条记录,而忽略另一条记录
SELECT tour_package.id, tour_package.description AS description,
tour_package.NAME AS name,
Group_concat(DISTINCT(destination_continent.NAME)) AS continent_name,
Group_concat(DISTINCT(travel_style.NAME)) A
我使用这个查询返回浮动字段在其平均值周围的分布:
SELECT COUNT(*) AS [Count], Result FROM (
SELECT ROUND(Result - AVG(Result) OVER(), 1) Result FROM Results)
GROUP BY Result
此查询返回所有记录与平均值之间的距离。现在,我需要过滤记录,它超出了±3SD的范围。我想,也许我可以通过将我的查询更改为:
SELECT COUNT(*) AS [Count], Result FROM (
SELECT ROUND(Result - AVG(Result)
我正在为如何使用SQL聚合函数和分组在我的表中找到正确的记录而苦苦挣扎。下面是一个简化的例子。我想按B分组并找到C的最小值的记录。我的问题是我必须将A包括在分组中,或者对A应用聚合函数,这两种方法似乎都不合适。
A | B | C
7 | 2 | 1
4 | 2 | 2
这些是我尝试过的两个查询的简化版本。
select A, B, min(c)
from @Table1
group by B, A
select min(a), B, min(c)
from @Table1
group by B
查询需要返回以下内容:
A | B | C
7
我有一个简单的SQL视图,其中有一条SELECT语句返回表中的几个字段。该视图名为vw_UserData,如下所示:
SELECT client.Lastname, client.Firstname, client.ClientID, client_image.Image
FROM client
LEFT OUTER JOIN client_image ON client.ClientID = client_image.ClientID
WHERE client_image.Description LIKE '%PHOTO%
image字段是(image/blob)字段,视图返回的记
我正在编写一个SQL查询,希望向记录集中添加一个列,该列基于另一个表中记录的存在而具有一个值。我在表中有一个左联接,我假设我必须在SQL中执行某种枢轴操作,但我不熟悉表的旋转。
我现有的SQL是
SELECT tabs.name,tabs.id AS tabid,tabs.sort,fields.id AS fieldid, fields.label
FROM tabs
INNER JOIN fields
ON tabs.id = fields.tabid
LEFT JOIN fields_reports
ON fields_reports.fieldid = fields.id
WH
我的桌子上有100张活动记录--汽车。用户已决定降级他们的帐户,现在有资格只有5个活动记录。我需要将95条记录(最早的第一条)的过期日期设置为当前的时间戳。如果您包含一些cakephp提示,我如何在MySQL中做到这一点?谢谢(但我将仅感谢您提供的SQL提示)。
下面是我尝试过的内容,但我得到了一条错误消息,说明mySQL在子查询中不支持限制。
UPDATE cars
SET archived = NOW()
WHERE id NOT IN (
SELECT id
FROM cars
ORDER BY created DESC LIMIT 5
)
我现在正在对代码执行SQL to LINQ返工。
我必须将如下所示的查询翻译为LINQ:
SELECT COUNT(*) AS NUM, A.a1, GROUP_CONCAT(A.a2)... A.an, B.b1... B.bn... etc
FROM A LEFT JOIN B ON ...
LEFT JOIN C ON ...
GROUP BY A.a1, A.a3.....B.b1
HAVING NUM > 1
注意,我故意在A.a2子句中省略了GROUP BY。查询只发现一个字段不同的重复记录。因此,在MySQL中,我必须将实体投影(JOIN)到一个行中,从行中
我使用MERGE (Oracle)对与子查询创建的虚拟表上的on子句中指定的条件相匹配的记录进行更新。声明的形式如下:
MERGE INTO table1 t1 USING SELECT (t2.f21, MAX(t2.f22), t3.f31, t3.f32
from
table2 t2, table3 t3
where
{... various join/filter criteria ...}
group by t2.f21, t3.f31, t3.f32) MATCHDATA
ON (t1.f11 = MATCHDATA.f21)
where t1.f12 = 'someth
假设我有一个包含三个字段的模型"Book“:name、author_name (作为字符串)、publish_state。现在我想知道哪些作者确实有一本出版的书。这个sql查询完全符合我的要求:
SELECT author_name from books GROUP BY author_name HAVING count(name) = 1 and every(publish_state = 'published');
我用的是Postgres,正如你所说的“每一条”。
在django ORM中有办法做到这一点吗?或者我需要使用原始查询吗?
我试图从一个表中随机选择一组结果(5个结果),而不是从同一个用户那里选择两个注释,并根据添加的日期对这些结果进行排序,并在30天内添加记录。例如,假设我的表包含以下列:
user_notes
-note_id
-user_id
-note
-note_added
我跟你很接近
SELECT * FROM
(
SELECT * FROM user_notes
WHERE note_added > date_sub(note_added,interval 30 day)
GROUP BY user_id
ORDER BY RAND()
) us
我有一个包含3列(电路板、线路、缺陷)的sql数据库
当前的sql查询统计同一条线上同一电路板上的所有缺陷总数,并填充一个数据网格视图。
sqlCmd.CommandText = "SELECT board, count(defect) AS defect FROM [sqlccmdefects] WHERE [line] = @line GROUP BY board ORDER BY defect DESC" ' and date >= @startdata AND date <= @enddata
'SQL Command Params
s
我有一份员工名单,一名员工可以在许多部门工作。我想要一份只有在deptID 3和4工作时才为他们工作的所有员工和所有部门的列表。
我,只有当员工在部门3或4工作时,我要列出他工作的所有部门的名单。
SQL查询用于获取员工和他们的工作部门:
SELECT e.`Emp_ID`,e.`FirstName`,e.`Address`
,GROUP_CONCAT(edd.Dept_id) AS dept_ids
,GROUP_CONCAT(edd.`Dept_Name`) AS dept_names
FROM employee e
INNER JOIN emp_dept_details edd
O
我有一个包含多个字段的表,但是重要的字段(用于查询)是
phone_number varchar(20),entry_date datetime
此表包含数百万条记录,每个phone_number都有多个条目。我想删除具有多个条目的phone_numbers,但希望为每个phone_number保留最后10个条目
示例:
SELECT phone_number,COUNT(*)
FROM test_table
GROUP BY phone_number
HAVING COUNT(*) > 10
ORDER BY COUNT(*) DESC;
结果:
要求:
我想要一个查
所以基本上我有这个作用域(Sql):
scope.to_sql
=> "SELECT \"offers\".* FROM \"offers\" INNER JOIN \"cities_offers\" ON \"offers\".\"id\" = \"cities_offers\".\"offer_id\" WHERE \"cities_offers\".\"city_id\" = 2 AND \"offers\".\&
我试图在hive上模拟一个SQL查询,从两个不的表中获取数据,这些表中有一个公共字段。
这两个表是几何的(GeoHive),其中一个包含一组点(每个记录一个),另一个是网格(每个记录一个单元)。目的是要计算出每个细胞内能容纳多少个点。
两个表之间的连接条件是几何函数本身。我在PostGIS中就是这样做的:
SELECT g.geom, count(t.geom) AS cnt
FROM grid g, points t
WHERE st_contains(g.geom,t.geom) GROUP BY g.geom
Hive不接受多个选择,所以我必须执行一个连接。我想像这样的东