ホームページ >バックエンド開発 >PHPチュートリアル >問題を解決するためのアイデアを探しています [2 つのテーブルをクエリして並べ替え、渡されたパラメーターに基づいてどのテーブルのデータであるかを判断します]

問題を解決するためのアイデアを探しています [2 つのテーブルをクエリして並べ替え、渡されたパラメーターに基づいてどのテーブルのデータであるかを判断します]

WBOY
WBOYオリジナル
2016-06-23 13:57:521082ブラウズ

機能: 市内全域の検索 (不動産開発業者が公開した住宅物件、オンラインで登録した個人 [エージェント] が公開した個人物件を含む - これら 2 つの物件は 2 つの異なるテーブル mhouse_info、uhouse_info にあります)
ここで問題が発生します:
方法並べ替え 【不動産業者が公開した物件が前、個人が投稿した物件が後ろ】! !
2 番目: リストがどのテーブルから来たのかを決定する方法 (fht_mhouse_info と fht_uhouse_info の主キーは hid [自由に変更可能])、
主なことは、リストがどのテーブルから来たのかを決定し、パラメーターを渡すことです。対応するテーブルにクエリを追加 リストは詳細です 【内容紹介】


ディスカッションへの返信(解決策)

mysql_field_table 指定したフィールドが存在するテーブル名を取得する

横方向に接続する場合、識別可能な値を割り当てることができます列名
垂直方向に接続する場合、テーブル名列

mysql_field_table を追加して、指定したフィールドが配置されているテーブル名を取得できます

水平方向に接続する場合、識別可能な列名を割り当てることができます
垂直方向に接続する場合、テーブル名列

モデレーター、私はレベルを制限しました!もう少し詳しく説明していただければ幸いです。Android の開発と Android の処理になるため、MySQL でできる限り解決する必要がある問題がまだあります。 。オンラインで待っています。 。

詳細を提供しない場合、どうすれば詳細を提供できますか?

mysql_field_table 指定されたフィールドが配置されているテーブル名を取得します

横方向に接続する場合、識別可能な列名を割り当てることができます
縦方向に接続する場合、テーブル名の列を追加することができます



横方向に接続する場合、識別可能な列名を割り当てることができます自分自身に名前を付ける 認識された列名
縦方向に接続する場合、テーブル名の列を追加できます
この 2 つの文はあまり理解できません。 。 2 つのテーブルを並べ替えるにはどうすればよいですか? どのテーブルを接続することについて話しているのでしょうか?

詳細を教えてくれないのですが、どうすれば詳しく教えられますか?

それでは、詳しく説明し、スクリーンショットを添付しましょう

これら 2 つのテーブルが分離されている理由は、それらのテーブルにはさまざまな物件が含まれているためです。個人のリスティングの内容はよりシンプルで、不動産がリリースするリスティングの内容は異なります。開発者はより複雑であるため、クエリの効率性 (null でないこと、フィールドの数、データベース レコードの数など) を考慮して 2 つのテーブルに分割される場合があります。 mhouse_info [不動産業者住宅情報テーブル]、uhouse_info [利用者個人住宅情報テーブル]) ただし、いずれも新築住宅(不動産開発業者が新築住宅を公開、個人でも賃貸住宅を公開できる[別テーブル]、新築住宅{ハウジング})。

現在、市内全体で検索する場合、並べ替え問題が発生しています[不動産業者が公開した物件は前に並べられ、個人が公開した物件は不動産業者の物件の後ろに掲載されます]。 2 番目の方法は、リスト (mysql_field_table()) が含まれるテーブルを判断する方法です。私はこの関数について学ぶために Baidu に行ったところです。テーブル名を取得できます (必要な関数を実現できます)。テーブル名の後に if ステートメントを記述します (クエリ ステートメントでは、クエリするフィールドをリストする必要があります。そうしないと、* の使用効率が非常に悪くなります)。モデレーターさん、ありがとうございます。並べ替えの問題がまだ残っています。 。

結ばれました。 。私はその問題が複雑だと考え、自分で解決することにしました。 。 。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。