早上好!
我具有以下数据库设置:
这是db语句(没有indize等等,还有更多的列,但我只注意必要的列,查询将无法执行):
CREATE TABLE IF NOT EXISTS d02bc910.orders (
id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
shops_id INT(10) UNSIGNED NOT NULL,
created_at TIMESTAMP NULL DEFAULT NULL,
updated_at TIMESTAMP NULL DEFAULT NULL,
PRIMARY KEY (id);
CREATE TABLE IF NOT EXISTS d02bc910.shops_status (
shops_status_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
shops_id INT(10) UNSIGNED NOT NULL,
translations_id INT(10) UNSIGNED NOT NULL, <= the software's multilingual so I use translations here
status_order TINYINT(3) NOT NULL,
PRIMARY KEY (shops_status_id);
CREATE TABLE IF NOT EXISTS d02bc910.orders_status (
order_id INT(10) UNSIGNED NOT NULL AUTO_INCREMENT,
status_id INT(10) UNSIGNED NOT NULL,
users_id INT(10) UNSIGNED NOT NULL,
updatedAt DATETIME NOT NULL;
我现在要做的是创建一个包含与各种搜索参数匹配的所有订单的报告,包括相应订单的最新状态。但是我不知道如何将JOIN合并到orders_status和最后设置的status_id。 之后,我可以在PHP foreach中完成此操作,但随后要么要么必须先收集所有id,然后运行一条语句,然后再匹配结果,但我想在SQL中有一种方法可以做到这一点。
有人可以帮我吗?
谢谢,S