1

ユーザーが姓、名、ミドルネームを同じ順序で入力できるオートコンプリート フィールドがあります。

lastname firstname middlename (用語として) を使用して、オートコンプリート ドロップダウンを表示する必要があります。

私のデータベースには、ファーストネーム、ラストネーム、ミドルネームの列が 3 つあります。ここで、同じ行の 3 つの列の値 (asc_lastname、asc_firstname、asc_middlename) をユーザー入力 (term) と比較する必要があります。

これがSQLクエリです。私の間違いを訂正してください。

$rs = mysql_query( "select asc_lastname, asc_firstname, asc_middlename from issio_asc_workers INNER JOIN issio_workers_asc_sc_list 
ON  issio_asc_workers.lname_fname_dob=issio_workers_asc_sc_list.lname_fname_dob where issio_workers_asc_sc_list.center_id='$cid' 
AND issio_workers_asc_sc_list.center_user_type = '31' AND issio_workers_asc_sc_list.center_status <> 'deleted' AND 
(issio_asc_workers.asc_lastname+' '+issio_asc_workers.asc_firstname+' '+issio_asc_workers.asc_middlename) 
LIKE '". mysql_real_escape_string($term) ."%'  ORDER BY issio_asc_workers.lname_fname_dob ASC LIMIT 0,10");

次のような SQL クエリを使用して、一度に 3 つの列の値を比較することは可能ですか?

 select * 
 from table 
 where (column1+''+column2+''column3) like 'this is good'

私の拙い文章で申し訳ありません。

4

1 に答える 1

3

このクエリを試してください:

SELECT * FROM your_table WHERE CONCAT(column1, ' ', column2, ' ', column3) LIKE '%this is good%'

CONCAT のドキュメント

于 2012-06-29T22:56:54.260 に答える