ホームページ php教程 php手册 zend 2.2 db select 使用例子

zend 2.2 db select 使用例子

Jun 13, 2016 am 11:30 AM
bar select use zend 使用

<span <?php<br /><br />use</span><span  Zend\Db\Sql\Select;
 
</span><span //</span><span  basic table</span>
<span $select0</span> = <span new</span><span  Select;
</span><span $select0</span>->from('foo'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo"';
 
 
// table as TableIdentifier</span>
<span $select1</span> = <span new</span><span  Select;
</span><span $select1</span>->from(<span new</span> TableIdentifier('foo', 'bar'<span ));
</span><span //</span><span  'SELECT "bar"."foo".* FROM "bar"."foo"';
 
 
// table with alias</span>
<span $select2</span> = <span new</span><span  Select;
</span><span $select2</span>->from(<span array</span>('f' => 'foo'<span ));
</span><span //</span><span  'SELECT "f".* FROM "foo" AS "f"';
 
 
// table with alias with table as TableIdentifier</span>
<span $select3</span> = <span new</span><span  Select;
</span><span $select3</span>->from(<span array</span>('f' => <span new</span> TableIdentifier('foo'<span )));
</span><span //</span><span  'SELECT "f".* FROM "foo" AS "f"';
 
 
// columns</span>
<span $select4</span> = <span new</span><span  Select;
</span><span $select4</span>->from('foo')->columns(<span array</span>('bar', 'baz'<span ));
</span><span //</span><span  'SELECT "foo"."bar" AS "bar", "foo"."baz" AS "baz" FROM "foo"';
 
 
// columns with AS associative array</span>
<span $select5</span> = <span new</span><span  Select;
</span><span $select5</span>->from('foo')->columns(<span array</span>('bar' => 'baz'<span ));
</span><span //</span><span  'SELECT "foo"."baz" AS "bar" FROM "foo"';
 
 
// columns with AS associative array mixed</span>
<span $select6</span> = <span new</span><span  Select;
</span><span $select6</span>->from('foo')->columns(<span array</span>('bar' => 'baz', 'bam'<span ));
</span><span //</span><span  'SELECT "foo"."baz" AS "bar", "foo"."bam" AS "bam" FROM "foo"';
 
 
// columns where value is Expression, with AS</span>
<span $select7</span> = <span new</span><span  Select;
</span><span $select7</span>->from('foo')->columns(<span array</span>('bar' => <span new</span> Expression('COUNT(some_column)'<span )));
</span><span //</span><span  'SELECT COUNT(some_column) AS "bar" FROM "foo"';
 
 
// columns where value is Expression</span>
<span $select8</span> = <span new</span><span  Select;
</span><span $select8</span>->from('foo')->columns(<span array</span>(<span new</span> Expression('COUNT(some_column) AS bar'<span )));
</span><span //</span><span  'SELECT COUNT(some_column) AS bar FROM "foo"';
 
 
// columns where value is Expression with parameters</span>
<span $select9</span> = <span new</span><span  Select;
</span><span $select9</span>->from('foo')-><span columns(
    </span><span array</span><span (
        </span><span new</span><span  Expression(
            </span>'(COUNT(?) + ?) AS ?',
            <span array</span>('some_column', 5, 'bar'),
            <span array</span>(Expression::TYPE_IDENTIFIER, Expression::TYPE_VALUE, Expression::<span TYPE_IDENTIFIER)
        )
    )
);
</span><span //</span><span  'SELECT (COUNT("some_column") + ?) AS "bar" FROM "foo"';
//     array('column1' => 5);
//
// 'SELECT (COUNT("some_column") + \'5\') AS "bar" FROM "foo"';
 
// joins (plain)</span>
<span $select10</span> = <span new</span><span  Select;
</span><span $select10</span>->from('foo')-><span join</span>('zac', 'm = n'<span );
</span><span //</span><span  'SELECT "foo".*, "zac".* FROM "foo" INNER JOIN "zac" ON "m" = "n"';
 
 
// join with columns</span>
<span $select11</span> = <span new</span><span  Select;
</span><span $select11</span>->from('foo')-><span join</span>('zac', 'm = n', <span array</span>('bar', 'baz'<span ));
</span><span //</span><span  'SELECT "foo".*, "zac"."bar" AS "bar", "zac"."baz" AS "baz" FROM "foo" INNER JOIN "zac" ON "m" = "n"';
 
 
// join with alternate type</span>
<span $select12</span> = <span new</span><span  Select;
</span><span $select12</span>->from('foo')-><span join</span>('zac', 'm = n', <span array</span>('bar', 'baz'), Select::<span JOIN_OUTER);
</span><span //</span><span  'SELECT "foo".*, "zac"."bar" AS "bar", "zac"."baz" AS "baz" FROM "foo" OUTER JOIN "zac" ON "m" = "n"';
 
 
// join with column aliases</span>
<span $select13</span> = <span new</span><span  Select;
</span><span $select13</span>->from('foo')-><span join</span>('zac', 'm = n', <span array</span>('BAR' => 'bar', 'BAZ' => 'baz'<span ));
</span><span //</span><span  'SELECT "foo".*, "zac"."bar" AS "BAR", "zac"."baz" AS "BAZ" FROM "foo" INNER JOIN "zac" ON "m" = "n"';
 
 
// join with table aliases</span>
<span $select14</span> = <span new</span><span  Select;
</span><span $select14</span>->from('foo')-><span join</span>(<span array</span>('b' => 'bar'), 'b.foo_id = foo.foo_id'<span );
</span><span //</span><span  'SELECT "foo".*, "b".* FROM "foo" INNER JOIN "bar" AS "b" ON "b"."foo_id" = "foo"."foo_id"';
 
 
// where (simple string)</span>
<span $select15</span> = <span new</span><span  Select;
</span><span $select15</span>->from('foo')->where('x = 5'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" WHERE x = 5';
 
 
// where (returning parameters)</span>
<span $select16</span> = <span new</span><span  Select;
</span><span $select16</span>->from('foo')->where(<span array</span>('x = ?' => 5<span ));
</span><span //</span><span  'SELECT "foo".* FROM "foo" WHERE x = ?';
//   array('where1' => 5);
//
// 'SELECT "foo".* FROM "foo" WHERE x = \'5\'';
 
 
// group</span>
<span $select17</span> = <span new</span><span  Select;
</span><span $select17</span>->from('foo')->group(<span array</span>('col1', 'col2'<span ));
</span><span //</span><span  'SELECT "foo".* FROM "foo" GROUP BY "col1", "col2"';</span>
 
 
<span $select18</span> = <span new</span><span  Select;
</span><span $select18</span>->from('foo')->group('col1')->group('col2'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" GROUP BY "col1", "col2"';</span>
 
 
<span $select19</span> = <span new</span><span  Select;
</span><span $select19</span>->from('foo')->group(<span new</span> Expression('DAY(?)', <span array</span>('col1'), <span array</span>(Expression::<span TYPE_IDENTIFIER)));
</span><span //</span><span  'SELECT "foo".* FROM "foo" GROUP BY DAY("col1")';
 
 
// having (simple string)</span>
<span $select20</span> = <span new</span><span  Select;
</span><span $select20</span>->from('foo')->having('x = 5'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" HAVING x = 5';
 
 
// having (returning parameters)</span>
<span $select21</span> = <span new</span><span  Select;
</span><span $select21</span>->from('foo')->having(<span array</span>('x = ?' => 5<span ));
</span><span //</span><span  'SELECT "foo".* FROM "foo" HAVING x = ?';
//   array('having1' => 5);
//
// 'SELECT "foo".* FROM "foo" HAVING x = \'5\'';
 
 
// order</span>
<span $select22</span> = <span new</span><span  Select;
</span><span $select22</span>->from('foo')->order('c1'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" ORDER BY "c1" ASC';
 
 
// multiple order parts</span>
<span $select23</span> = <span new</span><span  Select;
</span><span $select23</span>->from('foo')->order(<span array</span>('c1', 'c2'<span ));
</span><span //</span><span  'SELECT "foo".* FROM "foo" ORDER BY "c1" ASC, "c2" ASC';
 
 
// mulitple order parts</span>
<span $select24</span> = <span new</span><span  Select;
</span><span $select24</span>->from('foo')->order(<span array</span>('c1' => 'DESC', 'c2' => 'Asc')); <span //</span><span  notice partially lower case ASC
// 'SELECT "foo".* FROM "foo" ORDER BY "c1" DESC, "c2" ASC';</span>
 
 
<span $select25</span> = <span new</span><span  Select;
</span><span $select25</span>->from('foo')->order(<span array</span>('c1' => 'asc'))->order('c2 desc'); <span //</span><span  notice partially lower case ASC
// 'SELECT "foo".* FROM "foo" ORDER BY "c1" ASC, "c2" DESC';
 
 
// limit</span>
<span $select26</span> = <span new</span><span  Select;
</span><span $select26</span>->from('foo')->limit(5<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" LIMIT ?';
//   array('limit' => 5);
//
// 'SELECT "foo".* FROM "foo" LIMIT \'5\'';
 
 
// limit with offset</span>
<span $select27</span> = <span new</span><span  Select;
</span><span $select27</span>->from('foo')->limit(5)->offset(10<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" LIMIT ? OFFSET ?';
//   array('limit' => 5, 'offset' => 10);
//
// 'SELECT "foo".* FROM "foo" LIMIT \'5\' OFFSET \'10\'';
 
 
// joins with a few keywords in the on clause</span>
<span $select28</span> = <span new</span><span  Select;
</span><span $select28</span>->from('foo')-><span join</span>('zac', '(m = n AND c.x) BETWEEN x AND y.z'<span );
</span><span //</span><span  'SELECT "foo".*, "zac".* FROM "foo" INNER JOIN "zac" ON ("m" = "n" AND "c"."x") BETWEEN "x" AND "y"."z"';
 
 
// order with compound name</span>
<span $select29</span> = <span new</span><span  Select;
</span><span $select29</span>->from('foo')->order('c1.d2'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" ORDER BY "c1"."d2" ASC';
 
 
// group with compound name</span>
<span $select30</span> = <span new</span><span  Select;
</span><span $select30</span>->from('foo')->group('c1.d2'<span );
</span><span //</span><span  'SELECT "foo".* FROM "foo" GROUP BY "c1"."d2"';
 
 
// join with expression in ON part</span>
<span $select31</span> = <span new</span><span  Select;
</span><span $select31</span>->from('foo')-><span join</span>('zac', <span new</span> Expression('(m = n AND c.x) BETWEEN x AND y.z'<span ));
</span><span //</span><span  'SELECT "foo".*, "zac".* FROM "foo" INNER JOIN "zac" ON (m = n AND c.x) BETWEEN x AND y.z';
 
 
// subselects</span>
<span $select32subselect</span> = <span new</span><span  Select;
</span><span $select32subselect</span>->from('bar')->where->like('y', '%Foo%'<span );
</span><span $select32</span> = <span new</span><span  Select;
</span><span $select32</span>->from(<span array</span>('x' => <span $select32subselect</span><span ));
</span><span //</span><span  'SELECT "x".* FROM (SELECT "bar".* FROM "bar" WHERE "y" LIKE ?) AS "x"';
// 'SELECT "x".* FROM (SELECT "bar".* FROM "bar" WHERE "y" LIKE \'%Foo%\') AS "x"';
 
 
// use array in where, predicate in where</span>
<span $select33</span> = <span new</span><span  Select;
</span><span $select33</span>->from('table')->columns(<span array</span>('*'))->where(<span array</span><span (
    </span>'c1' => <span null</span>,
    'c2' => <span array</span>(1, 2, 3),
    <span new</span> \Zend\Db\Sql\Predicate\IsNotNull('c3'<span )
));
</span><span //</span><span  'SELECT "table".* FROM "table" WHERE "c1" IS NULL AND "c2" IN (?, ?, ?) AND "c3" IS NOT NULL';
// 'SELECT "table".* FROM "table" WHERE "c1" IS NULL AND "c2" IN (\'1\', \'2\', \'3\') AND "c3" IS NOT NULL';
 
 
// Expression objects in order</span>
<span $select34</span> = <span new</span><span  Select;
</span><span $select34</span>->from('table')->order(<span array</span><span (
    </span><span new</span> Expression('isnull(?) DESC', <span array</span>('name'), <span array</span>(Expression::TYPE_IDENTIFIER)),
    'name'<span 
));
</span><span //</span><span  'SELECT "table".* FROM "table" ORDER BY isnull("name") DESC, "name" ASC';
 
 
// join with Expression object in COLUMNS part (ZF2-514)</span>
<span $select35</span> = <span new</span><span  Select;
</span><span $select35</span>->from('foo')->columns(<span array</span>())-><span join</span>('bar', 'm = n', <span array</span>('thecount' => <span new</span> Expression("COUNT(*)"<span )));
</span><span //</span><span  'SELECT COUNT(*) AS "thecount" FROM "foo" INNER JOIN "bar" ON "m" = "n"';
 
 
// multiple joins with expressions</span>
<span $select36</span> = <span new</span><span  Select;
</span><span $select36</span>->from('foo'<span )
    </span>-><span join</span>('tableA', <span new</span> Predicate\Operator('id', '=', 1<span ))
    </span>-><span join</span>('tableB', <span new</span> Predicate\Operator('id', '=', 2<span ))
    </span>-><span join</span>('tableC', <span new</span> Predicate\PredicateSet(<span array</span><span (
        </span><span new</span> Predicate\Operator('id', '=', 3),
        <span new</span> Predicate\Operator('number', '>', 20<span )
    )));
</span><span //</span><span  'SELECT "foo".*, "tableA".*, "tableB".*, "tableC".* FROM "foo" '
//   'INNER JOIN "tableA" ON "id" = :join1part1 INNER JOIN "tableB" ON "id" = :join2part1 '
//   'INNER JOIN "tableC" ON "id" = :join3part1 AND "number" > :join3part2';
//
// 'SELECT "foo".*, "tableA".*, "tableB".*, "tableC".* FROM "foo" '
//   'INNER JOIN "tableA" ON "id" = \'1\' INNER JOIN "tableB" ON "id" = \'2\' '
//   'INNER JOIN "tableC" ON "id" = \'3\' AND "number" > \'20\'';</span>
ログイン後にコピー

 

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

マグネットリンクの使い方 マグネットリンクの使い方 Feb 18, 2024 am 10:02 AM

マグネット リンクは、リソースをダウンロードするためのリンク方法であり、従来のダウンロード方法よりも便利で効率的です。マグネット リンクを使用すると、中間サーバーに依存せずに、ピアツーピア方式でリソースをダウンロードできます。この記事ではマグネットリンクの使い方と注意点を紹介します。 1. マグネット リンクとは? マグネット リンクは、P2P (Peer-to-Peer) プロトコルに基づくダウンロード方式です。ユーザーはマグネット リンクを通じてリソースの発行者に直接接続し、リソースの共有とダウンロードを完了できます。従来のダウンロード方法と比較して、磁気

mdfおよびmdsファイルの使用方法 mdfおよびmdsファイルの使用方法 Feb 19, 2024 pm 05:36 PM

mdf ファイルと mds ファイルの使用方法 コンピューター技術の継続的な進歩により、さまざまな方法でデータを保存および共有できるようになりました。デジタル メディアの分野では、特殊なファイル形式に遭遇することがよくあります。この記事では、一般的なファイル形式である mdf および mds ファイルについて説明し、その使用方法を紹介します。まず、mdf ファイルと mds ファイルの意味を理解する必要があります。 mdf は CD/DVD イメージ ファイルの拡張子で、mds ファイルは mdf ファイルのメタデータ ファイルです。

Win11 で Xbox Game Bar を完全にアンインストールする方法は? Xbox Game Bar をアンインストールする方法を共有する Win11 で Xbox Game Bar を完全にアンインストールする方法は? Xbox Game Bar をアンインストールする方法を共有する Feb 10, 2024 am 09:21 AM

Win11XboxGameBar を完全にアンインストールするにはどうすればよいですか? Xbox GameBar は、システムに付属するゲーム プラットフォームです。ゲームの録画、スクリーンショット、ソーシャル機能のためのツールを提供します。ただし、大量のメモリを消費するため、アンインストールするのは簡単ではありません。アンインストールしたい友達もいますが、完全にアンインストールする方法を以下に紹介します。方法 1. Windows ターミナルを使用する 1. [Win+X] キーの組み合わせを押すか、タスクバーの [Windows スタート メニュー] を [右クリック] して、表示されるメニュー項目から [ターミナル アドミニストレータ] を選択します。 2. [ユーザー アカウント制御] ウィンドウで、このアプリがデバイスに変更を加えることを許可しますか? [はい]をクリックします。 3. 次のコマンドを実行します: Get-AppxP

CrystalDiskmarkとはどのようなソフトウェアですか? -crystaldiskmarkの使い方は? CrystalDiskmarkとはどのようなソフトウェアですか? -crystaldiskmarkの使い方は? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark は、シーケンシャルおよびランダムの読み取り/書き込み速度を迅速に測定する、ハード ドライブ用の小型 HDD ベンチマーク ツールです。次に、編集者が CrystalDiskMark と Crystaldiskmark の使用方法を紹介します。 1. CrystalDiskMark の概要 CrystalDiskMark は、機械式ハード ドライブとソリッド ステート ドライブ (SSD) の読み取りおよび書き込み速度とパフォーマンスを評価するために広く使用されているディスク パフォーマンス テスト ツールです。 ). ランダム I/O パフォーマンス。これは無料の Windows アプリケーションで、使いやすいインターフェイスとハード ドライブのパフォーマンスのさまざまな側面を評価するためのさまざまなテスト モードを提供し、ハードウェアのレビューで広く使用されています。

foob​​ar2000のダウンロード方法は? -foobar2000の使い方 foob​​ar2000のダウンロード方法は? -foobar2000の使い方 Mar 18, 2024 am 10:58 AM

foob​​ar2000 は、音楽リソースをいつでも聴くことができるソフトウェアです。あらゆる種類の音楽をロスレス音質で提供します。音楽プレーヤーの強化版により、より包括的で快適な音楽体験を得ることができます。その設計コンセプトは、高度なオーディオをコンピュータ上で再生可能 デバイスを携帯電話に移植し、より便利で効率的な音楽再生体験を提供 シンプルでわかりやすく、使いやすいインターフェースデザイン 過度な装飾や煩雑な操作を排除したミニマルなデザインスタイルを採用また、さまざまなスキンとテーマをサポートし、自分の好みに合わせて設定をカスタマイズし、複数のオーディオ形式の再生をサポートする専用の音楽プレーヤーを作成します。過度の音量による聴覚障害を避けるために、自分の聴覚の状態に合わせて調整してください。次は私がお手伝いさせてください

NetEase メールボックス マスターの使用方法 NetEase メールボックス マスターの使用方法 Mar 27, 2024 pm 05:32 PM

NetEase Mailbox は、中国のネットユーザーに広く使用されている電子メール アドレスとして、その安定した効率的なサービスで常にユーザーの信頼を獲得してきました。 NetEase Mailbox Master は、携帯電話ユーザー向けに特別に作成された電子メール ソフトウェアで、電子メールの送受信プロセスが大幅に簡素化され、電子メールの処理がより便利になります。 NetEase Mailbox Master の使い方と具体的な機能について、以下ではこのサイトの編集者が詳しく紹介しますので、お役に立てれば幸いです。まず、モバイル アプリ ストアで NetEase Mailbox Master アプリを検索してダウンロードします。 App Store または Baidu Mobile Assistant で「Ne​​tEase Mailbox Master」を検索し、画面の指示に従ってインストールします。ダウンロードとインストールが完了したら、NetEase の電子メール アカウントを開いてログインします。ログイン インターフェイスは次のとおりです。

Baidu Netdisk アプリの使用方法 Baidu Netdisk アプリの使用方法 Mar 27, 2024 pm 06:46 PM

クラウド ストレージは今日、私たちの日常生活や仕事に欠かせない部分になっています。中国有数のクラウド ストレージ サービスの 1 つである Baidu Netdisk は、強力なストレージ機能、効率的な伝送速度、便利な操作体験により多くのユーザーの支持を得ています。また、重要なファイルのバックアップ、情報の共有、オンラインでのビデオの視聴、または音楽の聴きたい場合でも、Baidu Cloud Disk はニーズを満たすことができます。しかし、Baidu Netdisk アプリの具体的な使用方法を理解していないユーザーも多いため、このチュートリアルでは Baidu Netdisk アプリの使用方法を詳しく紹介します。まだ混乱しているユーザーは、この記事に従って詳細を学ぶことができます。 Baidu Cloud Network Disk の使用方法: 1. インストール まず、Baidu Cloud ソフトウェアをダウンロードしてインストールするときに、カスタム インストール オプションを選択してください。

BTCC チュートリアル: BTCC 取引所で MetaMask ウォレットをバインドして使用する方法は? BTCC チュートリアル: BTCC 取引所で MetaMask ウォレットをバインドして使用する方法は? Apr 26, 2024 am 09:40 AM

MetaMask (中国語ではリトル フォックス ウォレットとも呼ばれます) は、無料で評判の高い暗号化ウォレット ソフトウェアです。現在、BTCC は MetaMask ウォレットへのバインドをサポートしており、バインド後は MetaMask ウォレットを使用してすぐにログイン、値の保存、コインの購入などが可能になり、初回バインドで 20 USDT のトライアル ボーナスも獲得できます。 BTCCMetaMask ウォレットのチュートリアルでは、MetaMask の登録方法と使用方法、および BTCC で Little Fox ウォレットをバインドして使用する方法を詳しく紹介します。メタマスクウォレットとは何ですか? 3,000 万人を超えるユーザーを抱える MetaMask Little Fox ウォレットは、現在最も人気のある暗号通貨ウォレットの 1 つです。無料で使用でき、拡張機能としてネットワーク上にインストールできます。

See all articles