0

sqlite で検索する場合、次の SQL を使用してすべての列を 1 回検索します。

Select id from table where '--' || IFNULL(name, ' ')  
|| '--' || IFNULL(created, ' ')  || '--' || IFNULL(desc, ' ')  
|| '--' LIKE '%query%'

orderここで、テーブルとテーブルを検索する必要がありorder detailsます。彼らはそのように見えます

注文表

id
date
customer_id

注文詳細

id
product_id
cost
orders_id
qty

この場合、どのように検索すればよいでしょうか。結合を使用してみました:

Select o.id,o.customer_id from orders o where '--' 
(Select * from customers where name like '%query%' and id=customer_id) '--' 
||  (Select * from product where name like '%query%' and ID =
(Select product_id from order_details where id =odetails_id)) '--' LIKE '%query%'

編集

この新しいクエリを試しましたが、「OR」でエラーが発生しました

SELECT o.id FROM orders o WHERE o.id in

((SELECT order_id FROM order_items WHERE order_items.service_id In
(SELECT id FROM services WHERE name like query))  
OR o.id in
(SELECT order_id FROM order_items WHERE order_items.customer_id In
(SELECT id FROM customers WHERE name like query)) 
OR o.id in
(SELECT order_id FROM order_items WHERE order_items.cloth_id In
(SELECT id FROM cloths WHERE name like query) ))

これを修正するにはどうすればよいですか

4

1 に答える 1