简体   繁体   English

在 SQL 中查询返回值

[英]Query returned values in SQL

I would like to write an SQL query which uses results from previous one.我想编写一个 SQL 查询,它使用前一个查询的结果。

For example - I have a table Orders with fields: order_id, date and value.例如 - 我有一个包含字段的表 Orders:order_id、日期和值。 I need to get all dates from column date where value is larger than 5:我需要从列日期中获取值大于 5 的所有日期:

SELECT date 
FROM Orders 
WHERE value > 5;

Then I need to return all values for dates, which are +2 days from the returned ones.然后我需要返回日期的所有值,这些值与返回的日期相差 2 天。 Is it possible to write short query without using LOOP statement?是否可以在不使用 LOOP 语句的情况下编写短查询?

Here is an example table:这是一个示例表:

在此处输入图片说明

I am expecting to get the result:我期待得到结果:

在此处输入图片说明

his will give you what you need.他会给你你所需要的。

select date, value  
from Orders where date in
(
  SELECT date + INTERVAL 5 DAY as date
  FROM Orders 
  WHERE value > 100;
)

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM