我有以下问题:
想要找到连续的重复项
SLNO NAME PG
1 A1 NO
2 A2 YES
3 A3 NO
4 A4 YES
6 A5 YES
7 A6 YES
8 A7 YES
9 A8 YES
10 A9 YES
11 A10 NO
12 A11 YES
13 A12 NO
14 A14 NO
Run Code Online (Sandbox Code Playgroud)
我们将考虑PG列的值,我需要输出为6,这是最大连续重复的计数.
这是我目前正在进行的查询:
SELECT COUNT(approved) AS 'approve'
, COUNT(approved) AS 'deny'
, COUNT(approved) AS 'unset'
FROM `approval`
WHERE 'approve' = 'Approved'
AND 'deny' = 'Denied'
AND 'unset' = 'Unset
Run Code Online (Sandbox Code Playgroud)
我希望计数记录枚举批准的所有时间=已批准,已拒绝和未设置
我完全混淆为什么这段代码不是GROUP BY表达式:
SELECT Section_ID, COUNT(Student_ID)
FROM Enrollment
WHERE Enroll_Date = TO_DATE('22-FEB-2007', 'DD-MON-YYYY')
GROUP BY Section_ID
ORDER BY Section_ID DESC, Student_ID;
Run Code Online (Sandbox Code Playgroud)
我知道它与COUNT函数有关,但我无法弄清楚为什么.即使我将COUNT(Student_ID)添加到GROUP BY,我也会得到一个不同的错误,即此处不允许使用组功能.我究竟做错了什么?
我在删除重复行时遇到了一些困难。我认为 user_id 和 time_id 一起充当标识符,但它们甚至是重复的。
user_id(文本)、time_id(bigint)、value1(数字)
user_id; time_id; value1|
aaa;1;3|
aaa;1;3|
aaa;2;4|
baa;3;1|
Run Code Online (Sandbox Code Playgroud)
在这种情况下,如何删除重复项?因为我在 time_id 中有 16 个不同的值,在 user_id 中有 15,000 个不同的值,所以我尝试了这样的事情,但我没有唯一的 id..
DELETE FROM tablename a
USING tablename b
WHERE a.unique_id < b.unique_id
AND a.user_id = b.user_id
time_id = 1 (repeat till time_id 16)
Run Code Online (Sandbox Code Playgroud) 创建另一个表的副本时,假设表“tab1”已经存在,我想为其创建一个名为“tab2”的副本
CREATE TABLE tab2 AS SELECT * FROM tab1 WHERE 1=1;
Run Code Online (Sandbox Code Playgroud)
创建结构和数据的副本。
CREATE TABLE tab2 AS SELECT * FROM tab1 WHERE 1=2;
Run Code Online (Sandbox Code Playgroud)
仅创建结构。据我所知,1=1 表示 TRUE,1=2 表示 FALSE。
我可以说 69=69 而不是 1=1 吗?我可以说 99=2 而不是 1=2 吗?