ホームページ  >  記事  >  バックエンド開発  >  もう 1 つの問題は、データはある程度つながっていますが、解決策を見つけるのが難しいということです。

もう 1 つの問題は、データはある程度つながっていますが、解決策を見つけるのが難しいということです。

WBOY
WBOYオリジナル
2016-06-13 13:42:55884ブラウズ

もう一つの問題は、データは多少関連していますが、
またはクエリ

を実行するのが難しいです。テーブルには n 個のフィールドがあり、その中の主キー ID は


です。 PHPコードにArray

$arr=array(
array('id'=>'5','num'=>100),
array('id '=>'11' ,'num'=>99),
array('id'=>'3','num'=>98),
....
)

つまり、配列 $arr を num に従って大きい順に並べます。 この時の id の順序は次のようになります。

すると、要件は次のようになります。対応するコレクションを見つけるには、データベース クエリ セットをこの ID の順序に従って配置する必要があります。 コレクションの作成方法

は少し不規則に見えますが、ある程度はつながっているようです

-----解決策---------------
配列内のIDを調べるということでしょうか? ?

はいの場合: ID を配列に形成し、(implode()) で SQL ID を作成します。
------解決策---------
ソース Do を使用して配列を一時テーブル
にインポートしますテーブルの関連クエリ、結合キー ID、ソートキー一時 table.num
------解決策---------
配列 $arr=(3, 2 ,1); と table の場合、次の SQL は $arr

SQL コード
 によってテーブルのソートを実現できます。
SELECT t.* FROM `table` t,(SELECT 3 AS id UNION SELECT 2 UNION SELECT 1) AS arr WHERE t.id=arr.id
<br><font color="#e78608">------解決策------</font><br>order by は、指定した値に基づいて実装できます。整理はされているが非効率なようだ
<br><font color="#e78608">------解決策---------</font><br>これはphpに任せるのが一番良いでしょう。 <div class="clear"></div>
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。