坚持SQL分配

时间:2013-10-30 01:38:02

标签: sql

问题

  

哪些客户在1995年第4季度在1号店铺下订单?   显示客户ID,名字和姓氏,城市和州。按升序客户ID顺序列出。

到目前为止我有什么

SELECT person.id, person.firstname, person.lastname, person.city, person.state
FROM person
INNER JOIN Order_header
ON person.id=order_header.customer_id
WHERE store_number = 1 
ORDER BY customer_id asc

我被困的地方
1995年第四季度的部分,以及我如何将其与我已有的相结合。

我将非常感谢任何帮助或建议,我承认我不知道自己在做什么。

表。


    [id]
   ,[lastname]
   ,[firstname]
   ,[mi]
   ,[street]
   ,[city]
   ,[state]
   ,[zip]
   ,[area_code]
   ,[phone_number]

order_header

   [invoice_number]
  ,[store_number]
  ,[customer_id]
  ,[account_number]
  ,[order_date]
  ,[est_delivery_date]
  ,[delivery_date]
  ,[amount_due]

2 个答案:

答案 0 :(得分:2)

两种选择:

(1)在你的WHERE条款中,加入类似

的内容
AND '1995-10-01' <= order_header.order_date AND order_header.order_date < '1996-01-01'

(2)第二个选项更简单,但只有当日期只是普通日期(没有时间)时才会起作用,例如 1995-12-31 05:30:10

AND order_header.order_date BETWEEN '1995-10-01' AND '1995-12-31'

当然,我假设存在order_header.order_date之类的东西。

答案 1 :(得分:0)

像...一样的东西。

select person.id, person.firstname, person.lastname, person.city, person.state 
from person
inner join order_header on person.id = order_header.customer_id
where order_header.store_number = 1 and order_header.order_date between '10-1-1995' and '1-1-1996'
order by order_header.customer_id desc