Heim  >  Artikel  >  Datenbank  >  mysql妙用bit存储信息

mysql妙用bit存储信息

WBOY
WBOYOriginal
2016-06-07 15:17:581232Durchsuche

做游戏要存储用户经过城市列表,我想用varchar类型存,大自然提出用比特存信息的好办法,这样一来,我比原来就减少了至少一半的mysql网络请求开销,同时也让mysql的空间节省了许多。 比如,我要标记第三个城市的为已经访问过,我更新bit数据的SQL语句是这样

做游戏要存储用户经过城市列表,我想用varchar类型存,大自然提出用比特存信息的好办法,这样一来,我比原来就减少了至少一半的mysql网络请求开销,同时也让mysql的空间节省了许多。

比如,我要标记第三个城市的为已经访问过,我更新bit数据的SQL语句是这样的(用到了位操作的与、或、移位):

UPDATE `characters` SET `visited_cities` = visited_cities | (1
<p>从cities表找到对应的city:</p>

<pre class="brush:php;toolbar:false">SELECT t1.* from cities as t1, characters as t2 where (1<br>
<span>上面的visited_cities字段是bigint(64位)</span>

<p>真是很方便。</p>
<p><br>
</p>
<p><br>
</p>
<p><br>
</p>


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn