私はその形式でいくつかのデータを含むデータベースを持っています:
icon(name, size, tag)
(myicon.png, 16, 'twitter')
(myicon.png, 32, 'twitter')
(myicon.png, 128, 'twitter')
(myicon.png, 256, 'twitter')
(anothericon.png, 32, 'facebook')
(anothericon.png, 128, 'facebook')
(anothericon.png, 256, 'facebook')
ご覧のとおり、名前フィールドは一意ではありません。同じ名前のアイコンを複数持つことができ、それらはサイズ フィールドで区切られています。PHPには、たとえば次のような1つのアイコンセットを取得するクエリがあります。
$dbQueryIcons = mysql_query("SELECT * FROM pl_icon WHERE tag LIKE '%".$SEARCH_QUERY."%' GROUP BY name ORDER BY id DESC LIMIT ".$firstEntry.", ".$CONFIG['icon_per_page']."") or die(mysql_error());
この例では、$tag に 'twitter' が含まれている場合、タグ 'twitter' を持つ最初の SQL データ エントリのみが表示されるため、次のようになります。
(myicon.png, 16, 'twitter')
これは私が望んでいるものですが、デフォルトでは「128」サイズを好みます。存在する場合は128サイズのみを送信し、別のサイズでない場合はSQLに送信するように指示することは可能ですか?
別の質問では、誰かが GROUP BY を使用した解決策を教えてくれますが、この場合は GROUP BY という名前があるため実行されません。GROUP BY を削除すると、同じアイコンのすべてのサイズが表示されます。
ありがとう !