【发布时间】:2016-12-19 16:36:45
【问题描述】:
我有 2 张桌子:今天的订单和记录
Table Name : Orders from today
+-----------+-----------+
|Order ID | Online |
+-----------+-----------+
| 550 | Yes |
| 551 | No |
| 552 | Yes |
| 553 | Yes |
+-----------+-----------+
Table Name : Records
+----------------+
| A |
+----------------+
| 548xxxxx |
| 549xxxxx |
| 550xxxxx |
| 551xxxxx |
| 552xxxxx |
| 553xxxxx |
| 554xxxxx |
+----------------+
XXXXX represents random number
我正在尝试根据 Orders from today 表中的 ORDER ID 的前 3 位从 Records 表中获取完整记录。 我想要的结果是:
Table Name : Records
+----------------+
| A |
+----------------+
| 550xxxxx |
| 551xxxxx |
| 552xxxxx |
| 553xxxxx |
+----------------+
我尝试过使用:
SELECT * FROM orders WHERE orderid IN ( SELECT (LEFT(orderid, 3) FROM sample));
但我只收到语法错误。我知道我可以使用 % 但我不知道如何适应代码。
请帮忙,非常感谢!
编辑! 假设从今天开始的 Orders 中的 Order Id 不都是 55%
谢谢!
【问题讨论】:
-
如果我理解正确,你可以试试joining on LIKE