选择语句格式
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了选择语句格式相关的知识,希望对你有一定的参考价值。
我正在尝试匹配两个表中的数据。一个是发票表,其中包含物品熄灭的日期和重新进入的日期。另一个是发票上的每个项目的行项目表。两个表都具有共同的invoice_number列。
我做的SELECT语句是:
SELECT line_items.invoice_number,date_out,date_due_in,equipment_qty,line_items.equipment_id FROM invoices join line_items
group by sequence;
一些输出的例子是:
invoice_number, date_out, date_due_in, equipment_qty, equipment_id
1 2017-01-06 2017-01-13 3 2
1 2017-01-06 2017-01-13 2 3
2 2017-01-06 2017-01-13 5 2
3 2017-01-06 2017-01-13 1 2
3 2017-01-06 2017-01-13 1 5
问题在于它将第一个项目的日期放在所有项目上。
以下是它的表格示例:
发票:
invoice_number, invoice_date, customer_id, equipment_total, date_out, date_due_in
1 2017-01-06 1 5 2017-01-06 2017-01-13
2 2017-01-08 2 4 2017-01-17 2017-01-19
3 2017-01-16 2 2 2017-01-16 2017-01-18
订单项:
Sequence, invoice_number, equipment_id, equipment_qty
1 1 2 3
2 1 3 2
3 2 2 5
4 3 2 1
SELECT语句中缺少什么?
答案
使用JOIN
时,请始终使用ON
的USING (fields, ...)
或syntax部分。
在这种情况下,两个表中的字段名称相同,invoice_number
,所以USING (invoice_number)
是一个合适的语法。
如果他们使用不同的名称ON invoices.ID = line_item.invoice_number
语法可以使用。
可以使用多个条件,因此可以在某些方面使用标准,例如SQL的WHERE
标准。
以上是关于选择语句格式的主要内容,如果未能解决你的问题,请参考以下文章