非常に単純な問題のように思えることを理解できないことに、私は頭を悩ませてきました。私は、当社が他のビジネス/会社の連絡先の詳細とビジネス上の連絡先 (フリーランサーまたは以前に追加された会社にリンクされている可能性があります) を保存できるようにする小さなビジネス連絡先システムを作成しています。アラビア語と英語の両方で連絡先の名前またはビジネスの名前を検索できる検索フォーム.何が間違っていますか?
更新: 各クエリ セクションからアラビア語の検索部分を削除すると、UNION クエリが機能します (つまり、"OR contact_name_arabic LIKE '%".$queryString."%'" と "OR company_name_arabic LIKE '%".$queryString. "%'")
これはますます複雑になっています:/
表 1: 企業
id | company_name | company_name_arabic
-----------------------------------------------
1 | Red Arrow | السهم الأحمر
2 | White Tower | البرج الأبيض
3 | Mobilex | موبيليكس
表 2: 連絡先
id | company_id | contact_name | contact_name_arabic
----------------------------------------------------------------
1 | 1 | Saeed Adam | سعيد آدم
2 | 1 | Andrew White | أندرو وايت
3 | 2 | Steve Rogers | ستيف روجرز
MySQL ステートメントは次のとおりです。
$querystring = "(SELECT contact_name, contact_name_arabic
FROM CONTACTS
WHERE contact_name LIKE '%".$queryString."%'
OR contact_name_arabic LIKE '%".$queryString."%')
UNION
(SELECT company_name, company_name_arabic
FROM COMPANIES
WHERE company_name LIKE '%".$queryString."%'
OR company_name_arabic LIKE '%".$queryString."%')";
ありがとう!