ホームページ バックエンド開発 PHPチュートリアル データベースフィールド再利用の基本原則と例_PHP チュートリアル

データベースフィールド再利用の基本原則と例_PHP チュートリアル

Jul 13, 2016 pm 05:44 PM
1つ そして バイナリ 代数 現れる 原理 基本 ベース 分野 番号 データベース 使用 使用 急行 論理

1. 論理代数の基礎:

1. 数字は2進数で表され、取り得る数字はすべて0と1のみです。

2. 基本的な操作は「and」、「or」、「not」の 3 つだけです。

AND演算は次のように定義されます(AND演算を表現するには&を使用します)

0 & 0 = 0

0 & 1 = 0

1 & 0 = 0

1 & 1 = 1

単純に理解すると、掛け算と同じように、0がある限り結果は0になります。

OR演算は次のように定義されます: (AND演算を表すには|を使用します)

0 = 0

0 | 1 = 1

1 | 0 = 1

1 | 1 = 1

単純に理解すると、1がある限り、結果は1になる、足し算と同じです。

2. 論理演算の例:

01111010101010101111111111111111 & 1100000 = 1100000

一般的には次のように理解できます:

数値のN桁の値を取得したい場合は、数値と2のN-1乗(マスク)をANDするだけです。

3. データベースフィールド定義:

データテーブル binary_sample を例に挙げます:

テーブル binary_sample(

を作成)

uid int unsigned not null,

ステータス int unsigned not null デフォルト 0,

主キー(uid)、

キーi_s(ステータス)

)engine=innodb;

ステータスフィールドの定義:

ステータスフィールドのデータ型は32ビット整数で、できるだけ多くの属性を格納するために、次のように定義します。

以下のすべての「ビット」の記述順序は、下位から上位(右から左)に表現されます。

数字0~2はユーザー登録状況を示します:

000は新規登録が承認されていないことを意味します

001は登録が承認されたことを意味します

010は上級ユーザーを意味します

011は管理者を意味します

100はスーパー管理者を意味します

101予約済み

110予約済み

111マスク

3~5人のユーザーの性別:

000は性別の不確実性を示します

001は性別が男性であることを示します

010は性別が女性であることを示します

011予約済み

100予約

101予約済み

110予約済み

111マスク

すべての男性ユーザーをクエリしたい場合:

select * from binary_sample where status & b111000 = b001000;

すべての管理者ユーザーをクエリしたい場合:

select * from binary_sample where status & b111 = b011;

すべての男性管理者ユーザーをクエリしたい場合:

select * from binary_sample where status & b111111 = b001011;

承認されていない新規登録以外のすべてのユーザーをクエリしたい場合は、次のようになります。

select * from binary_sample where status & b111 != b000;

4、PHPプログラムを使用してこのような計算を実行します:

define("USER_NEW",0);//000

define("USER_NORMAL",1);//001

define("USER_ADVANCE",2);//010

define("USER_MANAGE",3);//011

define("USER_SUPER",4);//100

define("USER_MASK",7);//111

define("GENDER_UNKNOWN",0);// 000000

define("GENDER_MALE",8);// 001000

define("GENDER_FEMALE",9);// 010000

define("GENDER_MASK",56);//111000

すべての男性ユーザーをクエリしたい場合:

$status=GENDER_MALE;

$mask=GENDER_MASK;

$sql="select * from binary_sample where status & ${mask} = ${status}";

すべての管理者ユーザーをクエリしたい場合:

$status=USER_MANAGE;

$mask=USER_MASK;

$sql="select * from binary_sample where status & ${mask} = ${status}";

すべての男性管理者ユーザーをクエリしたい場合:

$status=GENDER_MALE & USER_MANAGE;

$mask = GENDER_MASK & GENDER_MASK;

$sql="select * from binary_sample where status & ${mask} = ${status}";

新規登録および未承認のユーザー以外のすべてのユーザーをクエリしたい場合は、次のようにします。

$status = USER_NEW;

$mask = USER_MASK;

$sql="select * from binary_sample where status & ${mask} != ${status}";

類推すると、それぞれの値の意味が定義されていれば、クエリは基本的に解決されます。

http://www.bkjia.com/PHPjc/478751.html

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478751.html技術記事 1. 論理代数の基礎: 1. 数値は 2 進数で表現され、取り得る数値は 0 と 1 のみです。 2. 基本的な演算は「and」、「or」、「not」の 3 つだけです。 AND 演算定義...
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

iOS 18では、紛失または破損した写真を復元するための新しい「復元」アルバム機能が追加されます iOS 18では、紛失または破損した写真を復元するための新しい「復元」アルバム機能が追加されます Jul 18, 2024 am 05:48 AM

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Astar ステーキングの原則、収入の解体、エアドロップ プロジェクトと戦略、および運営のナニー レベルの戦略 Jun 25, 2024 pm 07:09 PM

目次 Astar Dapp ステーキングの原則 ステーキング収益 潜在的なエアドロップ プロジェクトの解体: AlgemNeurolancheHealthreeAstar Degens DAOVeryLongSwap ステーキング戦略と運用 「AstarDapp ステーキング」は今年初めに V3 バージョンにアップグレードされ、ステーキング収益に多くの調整が加えられましたルール。現在、最初のステーキング サイクルが終了し、2 番目のステーキング サイクルの「投票」サブサイクルが始まったばかりです。 「追加報酬」特典を獲得するには、この重要な段階を把握する必要があります (6 月 26 日まで続く予定で、残りは 5 日未満です)。 Astarステーキング収入を詳しく説明します。

トップ10グローバルデジタル仮想通貨取引プラットフォームランキング(2025権限ランキング) トップ10グローバルデジタル仮想通貨取引プラットフォームランキング(2025権限ランキング) Mar 06, 2025 pm 04:36 PM

2025年、グローバルデジタル仮想通貨取引プラットフォームは、トランザクションのボリューム、セキュリティ、ユーザーエクスペリエンスなどの指標に基づいて、2025年に世界のトップ10のデジタル通貨取引プラットフォームを激しく競争しています。 OKXは、強力な技術的強さとグローバルな運用戦略で最初にランクされており、Binanceは高流動性と低料金に密接に続きます。 Gate.io、Coinbase、Krakenなどのプラットフォームは、それぞれの利点がある最前線にいます。このリストには、Huobi、Kucoin、Bitfinex、Crypto.com、Geminiなどの取引プラットフォームがそれぞれ独自の特徴がありますが、投資は注意する必要があります。プラットフォームを選択するには、セキュリティ、流動性、料金、ユーザーエクスペリエンス、通貨選択、規制コンプライアンスなどの要因を考慮し、合理的に投資する必要があります

GolangでJSONデータをデータベースに保存するにはどうすればよいですか? GolangでJSONデータをデータベースに保存するにはどうすればよいですか? Jun 06, 2024 am 11:24 AM

JSON データは、gjson ライブラリまたは json.Unmarshal 関数を使用して MySQL データベースに保存できます。 gjson ライブラリは、JSON フィールドを解析するための便利なメソッドを提供します。json.Unmarshal 関数には、JSON データをアンマーシャリングするためのターゲット型ポインターが必要です。どちらの方法でも、SQL ステートメントを準備し、データをデータベースに永続化するために挿入操作を実行する必要があります。

PHP データベース接続の落とし穴: よくある間違いや誤解を避ける PHP データベース接続の落とし穴: よくある間違いや誤解を避ける Jun 05, 2024 pm 10:21 PM

PHP データベース接続エラーを回避するには、接続エラーを確認し、変数名を資格情報と照合するというベスト プラクティスに従ってください。安全なストレージまたは環境変数を使用して、資格情報のハードコーディングを回避します。 SQL インジェクションを防止し、準備されたステートメントまたはバインドされたパラメーターを使用するために、使用後に接続を閉じます。

MySQL:簡単な学習のためのシンプルな概念 MySQL:簡単な学習のためのシンプルな概念 Apr 10, 2025 am 09:29 AM

MySQLは、オープンソースのリレーショナルデータベース管理システムです。 1)データベースとテーブルの作成:createdatabaseおよびcreateTableコマンドを使用します。 2)基本操作:挿入、更新、削除、選択。 3)高度な操作:参加、サブクエリ、トランザクション処理。 4)デバッグスキル:構文、データ型、およびアクセス許可を確認します。 5)最適化の提案:インデックスを使用し、選択*を避け、トランザクションを使用します。

2025年の通貨サークルのトップ10の交換 2025年の通貨サークルのトップ10の交換 Feb 27, 2025 pm 06:33 PM

トップ10の仮想通貨取引プラットフォームのランキング(2025年の最新): Binance:グローバルリーダー、高い流動性、規制が注目を集めています。 OKX:大規模なユーザーベース、複数の通貨をサポートし、レバレッジされた取引を提供します。 gate.io:さまざまなフィアット通貨支払い方法を備えた上級交換は、さまざまな取引ペアと投資商品を提供します。 Bitget:デリバティブ交換、高流動性、低料金。 Huobi:さまざまな通貨と取引ペアをサポートする古い交換。 コインベース:厳密に規制されている有名なアメリカの交換。 フェメックスなど。

トップ10のデジタル通貨取引プラットフォームトップ10のデジタル通貨取引プラットフォームの最新リスト トップ10のデジタル通貨取引プラットフォームトップ10のデジタル通貨取引プラットフォームの最新リスト Mar 17, 2025 pm 05:57 PM

トップ10のデジタル通貨取引プラットフォーム:1。OKX、2。BINANCE、3。GATE.IO、4。HuobiGlobal、5。Kraken、6。Coinbase、7。Kucoin、8。Bitfinex、9。Crypto.com、10。Gemini、これらの交換は、ユーザーがユーザーを選択できます。

See all articles