- ベストアンサー
比較不可能な問題を解決する方法
- テーブルAとテーブルBのデータを比較する際に、曖昧さが生じる問題があります。この記事では、曖昧な比較を可能にする方法について解説します。
- まず、テーブルAには食べ物の日本語名が、テーブルBには食べ物の日本語名、英語名、産地などが入っています。テーブルAとテーブルBの食べ物英語名を一致させる方法を紹介します。
- 具体的な手順は以下の通りです。まず、テーブルAの日本語名とテーブルBの日本語名を比較し、一致するものを抽出します。その後、ループを使用して一致した項目の英語名を出力します。エラーの原因として、パースエラーが発生した可能性があります。解決策として、文法や構文エラーをチェックし、正しい書式に修正してみてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
これでどうでしょう。 $a = テーブルA[日本語]; $b = テーブルB[日本語]; $pos = strpos($b, $a); if ($pos === false) { # HITしない } else { # HITした } http://php.benscom.com/manual/ja/function.strpos.php
その他の回答 (1)
- moon_night
- ベストアンサー率32% (598/1831)
select [英語名] from tableA left join tableB on hapan = japan; あ、SQLじゃないのか。 テーブルというか、配列でしょうか? $tableA = array(); $tableB = array(); $tableA[] = '日本名'; $tableA[] = '日本名'; ・・・ $tableB[] = array('日本名','英語名','産地'); $tableB[] = array('日本名','英語名','産地'); ・・・ としましょうか。 foreach($tableA as $a){ foreach($tableB as $b){ if ($a == $b[0]) { print $b[1]; } } } と、こんな感じでしょう。
お礼
ご教授ありがとうございます。 すいません。 情報を書きわすれておりました。 MySQLでデータを呼び出します。 そして テーブルAの日本語は「1222日本語名.pdf」 4桁の日付+日本語名+pdfから成り立っております。 テーブルBの日本語「日本語名」 日本語名のみと成っております。 テーブルBとテーブルAの日本語を比較したいのですが・・・ if(テーブルA[日本語]==テーブルB[日本語])だと 完全一致になってしまい、 結果が0と成ってしまいました。 テーブルAの日本語の部分だけ比較って出来ませんでしょうか?
お礼
ありがとうございます!!!!!! 出来ましたっっっ。 本当にありがとうございます!!