SQL Server -我有3个简单的表(Fname、Lname和Exceptions),每个表都有一个名为Name的列。我希望我的最终结果是这样的:( Fname中的每个人+LName中的每个人)-(Exception中的每个人)。
FName:
Name
A
B
LName:
Name
Y
Z
例外情况:
Name
A
Z
预期的查询结果集:
B
Y
当前SQL查询:
Select Name from Fname
UNION ALL
Select Name from Lname
WHERE Name NOT IN
(Select Name from Exceptions)
SQL查询只适用
我想知道最近发生的100个事件。这些事件分散在多个表中。下面是一个示例: SELECT * FROM log_items_purchased ORDER BY timestamp DESC LIMIT 100
UNION
SELECT * FROM log_items_fulfilled ORDER BY timestamp DESC LIMIT 100
UNION
SELECT * FROM log_items_shipped ORDER BY timestamp DESC LIMIT 100 这将返回多达300条记录。然后,我将获取按时间戳排序的结果集,并获取前100条记录。如何在单个S
我有两个mysql查询,如下
$sql1 = mysqli_query($mysqli, "SELECT * FROM manualp WHERE client_id=75 AND date between '$currentdate' and '$prevdate' ");
$sql2=mysqli_query($mysqli, "SELECT * FROM manualp WHERE client_id=75 order by date DESC LIMIT 1");
有什么办法可以让我把他们连在一起吗?并将它们放入一个数组
Oracle SQL中的表如下所示:
Tab1
ID
-----
1
2
3
Tab2
ID
-----
3
4
5
我需要从Tab1中获取不存在于Tab2中的值。我提出了如下查询:
select ID
from Tab1
where ID not in (select ID from Tab2)
上面的查询不起作用,我如何根据需要更改它以获得结果:
ID
---
1
2
我可以补充说,我在这个问题上预先使用了子查询,如何在Oracle SQL中做到这一点?
表中的示例数据库,雇员:
id market firstName
1 1 John
2 2 James
3 1 Sally
4 1 Mary
5 2 Susan
如果我写了以下查询,
SELECT firstName
FROM employees
WHERE market = 1
我将得到以下数组:
array("John", "Sally", "Mary")
我使
我有产品的输入列表。客户可能会选择同一产品更多的时间。这样就好了。我想在MySQL中查询基于客户冗余输入列表的产品表--保持冗余,而不让它们聚合。
以下是输入列表:
产品(a,a,b,b,c,d,d,d)
我想得到这样的产品的价格:
a - 10
a - 10
b - 20
b - 20
c - 1
d - 900
d - 900
d - 900
所以我想保留冗余!
我试图使用IN和字段SQL子句,但是它进行了聚合,因此我失去了冗余。我使用了以下SQL语句:
select * from products where id IN ('a','a','b&
我尝试在MS Access中对两个表( CMVSC和TOXOSC )进行完全的外部连接,以检查两个表/仅仅一个表中包含了哪些I:
(SELECT * FROM CMVSC LEFT JOIN TOXOSC ON CMVSC.ID = TOXOSC.ID)
UNION
(SELECT * FROM TOXOSC LEFT JOIN CMVSC ON TOXOSC.ID = CMVSC.ID);
查询可以执行,但不会产生我所期望的结果。
CMVSC中的前几条记录(按升序ID排序)如下:
ID CMV_NEGDATE CMV_POSDATE
10245 04.02.2010 28.
我想要创建一个基于SQL查询的图表。这张图表应该每一年每12个月显示一次,即使其中一些还在未来。
我的SQL查询如下所示:
SELECT
MONTH (created) as m,
sum (price) as s
FROM
product
WHERE
YEAR (created) = 2020
GROUP BY
m
当然,这只显示当前或过去几个月的结果,其中也有任何条目。
有没有可能
制定查询,以便在任何情况下显示12个组,并且
如果没有组,它会得到默认值0吗?
我试图根据结果的描述(不是id)来排序结果列表,但我也需要插入另一个结果,其Id为null,描述为“ALL”。
要做到这一点,我使用UNION SELECT NULL, 'ALL'
这应该是一个非常简单的查询,但我不知道如何在查询命令实际结果集之前插入“ALL”。
以下是我到目前为止所拥有的:
SELECT *
FROM [dbo].[HouseType]
WHERE [TypeId] = COALESCE(@TypeId, [TypeId])
UNION SELECT NULL, 'ALL'
ORDER BY [TypeDesc]
我也尝试过在排序
我正在为一个包含嵌套select查询的项目编写sql代码。这是我实际上想要得到的查询的一部分。 "AND s.thirdparty in (2,3,5)"; 使用下面的代码,我可以很容易地获得值3和5。 "AND s.thirdparty in (select hid from tblname where col1='xx')" 它返回, "AND s.thirdparty in (3,5)" 但是我不能以这种方式得到值2。那么,我是否可以将其添加到嵌套查询的结果中,以便获得所需的完整查询?
我目前有两个select命令,如下所示。我想要做的是将结果一起添加到SQL查询中,而不是将变量添加到代码中。
select sum(hours) from resource;
select sum(hours) from projects-time;
有没有可能在同一个SQL中同时输出两个结果的总和?
假设这个非常简单的SQL查询:
SELECT * FROM a WHERE time < '2010-01-01'
现在,在时间部分实际上是“数组”的情况下,我如何组装一个查询?
不知何故地介于…之间:
SELECT * FROM a WHERE time < ['2010-01-01', '2012-01-01']
选择应该执行两次,但结果是一个单一的结果集。
注意,这个示例数组只包含两个项,但可能包含更多项,因为结果实际上来自子查询。
Postgresql 9.3
我有一个SQL查询,它有4个联合和4个左连接。它的布局如下:
SELECT ... FROM table1
LEFT JOIN other_table1
UNION SELECT ... FROM table2
LEFT JOIN other_table2
UNION SELECT ... other_table3
LEFT JOIN other_table3
UNION SELECT ... FROM table4
LEFT JOIN other_table4
运行4个独立的查询,然后在事后用php合并结果是不是更好?或者我应该把它们放在一起?哪一个能提供最快
你能帮我解决这个SQL查询吗?
我有两个表,如下所示
表A
ID NUM
------------
AA 123
BB 234
CC 345
DD 567
EE 678
FF 789
GG 890
表B
ID SER
-----------
AA MNP
BB MNP
CC MN
DD PQR
EE PQR
FF XYZ
GG XYZ
我希望结果如下所示
表C
SER NUM N
我有一个查询,需要返回子查询中不匹配的结果。子查询可以返回空结果,因此如果子查询返回空集,则需要设置默认值(例如0),以防止始终返回另一个NULL的IN (NULL)。
例如
SELECT * FROM example_table WHERE id NOT IN (subquery_that_selects_ids)
如果子查询没有找到匹配的结果,subquery_that_selects_ids可以返回一组整数,即(1,2,5,6)或空集。
COALESCE在这里不工作,因为子查询可能返回多个结果。
解决方案需要在SQLite或postgresql中工作。如何防止子查询返回空集?
每个人都
我试着做一个手推车产品有定制..。为了避免数据库中的大量查询,我尝试在查询后将结果保存在数组中。该查询如下所示:
$sql = 'SELECT *
FROM cc_restaurants_menu
WHERE menu_id
IN ("7","50","50")
ORDER BY FIELD (menu_id,"7","50","50")';
$result = $conn->
我认为这应该不是很难。我正在编写一段Oracle-SQL代码来从SQL中提取数据:
select ID, Qty from TableOne where ID in ('A', 'B', 'C')
如果in条件中的某些项目有匹配,我希望数据库显示查询结果,如果IN条件中的这些项目没有匹配,则返回默认值。例如,我希望结果为:
+----+-----------+
| ID | Qty |
+----+-----------+
| A | 3 |
| A | 5 |
| B | 4 |
我有一个联合查询和两个选择查询。
示例查询:
(SELECT column1, column2 FROM table1 where column1 = 1)
UNION
(SELECT column1, column2 FROM table2 WHERE column1 = 100);
假设上面的查询之一没有返回结果(即没有找到行)。
我只想要一个返回数据的查询的结果。
我有一个查询,它从videos表中选择10个相关的视频到给定的视频。我想要always to have 10 results,所以如果这个查询不能得到结果,或者有少于10个结果,那么另一个查询的执行条件就会更少。我以前在php中计数行,进行另一个查询并合并结果。太慢了,代码太长了。我知道在SQL中这样做更好,速度更快。我将PDO与php结合使用。
我怎么才能把它们结合起来?
第一个查询(主要查询):
select * from videos
where FROM_UNIXTIME(published) BETWEEN
DATE_SUB(FROM_UNIXTIME(:published), IN
早上好。SQL新来的家伙在这里寻求帮助。我试图从子查询中获取结果集的AVG。子查询工作得很好,给出了我需要的结果集,但我只是无法使结果集的AVG工作。如有任何指导,将不胜感激。
SELECT AVG(COUNT) FROM
(SELECT COUNT(DISTINCT(table2.item_no))
FROM table1
JOIN table2 ON table1.order_numb = table2.order_numb
WHERE user_so = 'paul'
AND order_date BETWEEN '9/20/2017'A
可以将以下查询组合成单个查询,我基本上感兴趣的是获得最后一个查询给出的结果。
#This is wrong SQL only intended as pseudocode
SELECT sum(amt) u FROM entry WHERE en_type='some_type' AND num='some_num';
SELECT sum(amt) v FROM entry WHERE en_type='some_other_type' AND num='some_num';
SELECT abal x FROM acco
我有两个查询,我无法使用UNION,请参阅问题
因此,我不得不使用两个独立的查询:
$sql1 = 'SELECT * FROM sheikh_tbl, wall';
$sql1 .= ' WHERE shk_fname LIKE "%'.$keyword.'%"';
$sql1 .= ' OR shk_mname LIKE "%'.$keyword.'%"';
$sql1 .= ' OR shk_lname LIKE "%'.$keyword.'%&
我想写一个SQL来统计我过去六个月的销售额,就像下面的代码一样。
SELECT
MONTH (pc.createTime) AS MONTH,
SUM (partsModelSum) AS totalSum
FROM
partscontractlinkmodel AS pl
RIGHT JOIN partscontract pc ON pl.partsContractID = pc.partsContractID
AND pc.companyID = 8
AND pc.createTime BETWEEN '2013/11/01 00:00:00'
AN
我根本不是SQL查询向导,下面是我的问题:
我有这3个独立的查询,非常好地工作,每个都给我一个漂亮的框架与我的网站上的结果。
SELECT arretsautressb AS Raison, SUM(minutesarrets) AS Minutes
FROM rapport_production_salles_blanches_2_repeat
GROUP BY Raison
ORDER BY Minutes DESC
SELECT redresseuseminutesarrets AS Raison, SUM(minutesarretsredresseuse) AS
这是我的表,我应该获取每个MAX (id)的status_id.
id status_id
10 1
11 1
12 2
13 2
14 2
15 4
16 4
所以,我使用这个sql查询,它工作为true,并获取我所有的最大ID。
select status_id, max(id) as max FROM `table`
where status_id in (1,2,3,4) group by status_id
这个sql命令使用时间获取我的3 MAX
我希望创建一个SQL查询,收集多个查询的结果。
我想应用一个随机的排序顺序,并返回有限数量的记录。
这些查询都将返回相同的字段(本例中为“RefCode”),但将具有不同的FROM和WHERE语句。
下面是一些可能的查询示例:
SELECT PD.RefCode
FROM ((PD
INNER JOIN P ON PD.PrdFK = P.PrdID)
INNER JOIN PR ON PR.ChildCatFK = P.ChildCatFK)
WHERE PR.ParentCatFK = 6
SELECT PD.RefCode
FROM (PR
INNER JOIN PD ON PR
我很少有SQL查询的经验,但是我对我的项目有这样的要求,用于搜索和提供自动的描述建议。
Id Description
1 Processing Peater order
2 Dent in front panel
3 New item purchased
如果用户在文本框中输入“P”,则
期望结果
Processing
Peater
panel
purchased
注意:结果集中的每个值都是唯一的。对不起,我的英语不是很好。
如果我有一个没有表的MySQL数据库。是否有一条SQL语句可以返回如下结果:
+------------+
| date |
+------------+
| 2017-06-01 |
| 2017-06-02 |
| 2017-06-03 |
| 2017-06-04 |
etc.... to any end date I want
+------------+
我想要这样的原因是因为我希望能够动态地生成一个这样的表,以帮助我在不同的数据库中进行一些查询。
我正在创建一个SQL查询/子查询,它将返回一个“上课日”列表。我使用的查询似乎不能识别来自子查询的值,我不知道为什么。如果我运行子查询,我会得到正确的值。由于某些原因,当我试图同时运行整个查询和子查询时,它不能正常工作,并且我只得到逗号分隔列表中第一个值的结果。如果我运行下面的查询,我只得到tblclasses.cla_ID =1234的结果: SELECT
*
FROM
classdays
WHERE
classdays.classday_classid IN (SELECT
CONCAT_WS(', ',
table A
id value
1 a
2 b
3 c 我有像上面这样的桌子。 和我的sql查询 ‘'select * from A as a where a.id in (1,3,2,3,3,1) order by字段(a.id,1,3,2,3,3,1)’ 结果是 id value
1 a
3 c
2 b 但我想选择 id value
1 a
3 c
2 b
3 c
3 c
1 a 像这样..。 我该怎么做呢?
更多的是一个概念性问题。我有一个查询,它计算一些值的和,并根据模板值X检查它,如下所示:
SELECT
SUM(...),
X,
SUM(...) - X AS delta
FROM
...
现在,查询本身运行良好。问题是,如果delta变量为非零,则需要它只显示一些结果,这意味着计算的和和与模板X之间存在差异。如果delta为零,则不需要显示任何结果。
这在SQL中可以实现吗?如果是的话,我该怎么做?
我正在尝试从一个数据库(sql Server2005)中提取结果,该数据库包含4个表: Subscriber S、Member M、ClaimLines L、ClaimHistoryLines H
查询如下:
select S.SBSB_ID, M.MEME_NAME,
(CASE L.CLCL_ID WHEN '' THEN H.CLCL_ID ELSE L.CLCL_ID END) AS CLAIM_ID
FROM CMC_CDDL_CL_LINE L, CMC_MEME_MEMBER M LEFT OUTER JOIN CMC_CLDH_DEN_HIST H
ON H.
我在Oracle SQL Developer中有以下查询:
query1:
with logg as
(select ID ...)
UNION
select ID from table2
query2:
select ID from table3
我想从查询2中获取所有in,但从查询1中删除查询2中的in,例如:
query2的结果
1, 2, 3
Query1的结果:
3, 4, 5
我的预期结果是:
1 , 2 -- because they are in query 1 but not in query2.
我试着使用:
select ID from table3
minus
总的来说,我对MySQL和SQL非常陌生,也无法完全理解如何以及在何处放置别名。举个例子,我有这样的湿疹:
CREATE DATABASE testdb;
USE testdb;
CREATE TABLE table_a (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
value INT NOT NULL,
PRIMARY KEY(id)
);
CREATE TABLE table_b (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
value INT NOT NULL,
我搜索了很多,但没有找到我需要的确切结果。我有一个问题和博客网站的项目。有两个表question_table和blog_table,现在我想在两个不同的查询中执行这两个表,并在一个页面上按日期排序作为新闻源。如果我没有解释清楚,我很抱歉。 详细描述的附加图像(结果必须如下所示) ? 适用于question_table "SELECT * FROM question_table WHERE status=1 ORDER BY posted_date DESC"的My sql query "SELECT * FROM blog_table WHERE status