久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

    • <bdo id='61FEg'></bdo><ul id='61FEg'></ul>

      <i id='61FEg'><tr id='61FEg'><dt id='61FEg'><q id='61FEg'><span id='61FEg'><b id='61FEg'><form id='61FEg'><ins id='61FEg'></ins><ul id='61FEg'></ul><sub id='61FEg'></sub></form><legend id='61FEg'></legend><bdo id='61FEg'><pre id='61FEg'><center id='61FEg'></center></pre></bdo></b><th id='61FEg'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='61FEg'><tfoot id='61FEg'></tfoot><dl id='61FEg'><fieldset id='61FEg'></fieldset></dl></div>
      <tfoot id='61FEg'></tfoot>

      <small id='61FEg'></small><noframes id='61FEg'>

      <legend id='61FEg'><style id='61FEg'><dir id='61FEg'><q id='61FEg'></q></dir></style></legend>

      1. SQL 從多個表中選擇 *

        SQL Select * from multiple tables(SQL 從多個表中選擇 *)

        <legend id='VF9vO'><style id='VF9vO'><dir id='VF9vO'><q id='VF9vO'></q></dir></style></legend>
                <tfoot id='VF9vO'></tfoot>
                  <bdo id='VF9vO'></bdo><ul id='VF9vO'></ul>
                    <tbody id='VF9vO'></tbody>

                  <i id='VF9vO'><tr id='VF9vO'><dt id='VF9vO'><q id='VF9vO'><span id='VF9vO'><b id='VF9vO'><form id='VF9vO'><ins id='VF9vO'></ins><ul id='VF9vO'></ul><sub id='VF9vO'></sub></form><legend id='VF9vO'></legend><bdo id='VF9vO'><pre id='VF9vO'><center id='VF9vO'></center></pre></bdo></b><th id='VF9vO'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='VF9vO'><tfoot id='VF9vO'></tfoot><dl id='VF9vO'><fieldset id='VF9vO'></fieldset></dl></div>

                • <small id='VF9vO'></small><noframes id='VF9vO'>

                  本文介紹了SQL 從多個表中選擇 *的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                  問題描述

                  使用 PHP/PDO/MySQL 是否可以在對多個表進行選擇并且返回的數(shù)組鍵是完全限定的以避免列名沖突時對列使用通配符?

                  Using PHP/PDO/MySQL is it possible to use a wildcard for the columns when a select is done on multiple tables and the returned array keys are fully qualified to avoid column name clash?

                  示例:

                  SELECT * from table1, table2;

                  給出:

                  數(shù)組鍵是'table1.id'、'table2.id'、'table1.name'等

                  Array keys are 'table1.id', 'table2.id', 'table1.name' etc.

                  我嘗試了SELECT table1.*,table2.* ...",但返回的數(shù)組鍵不是完全限定的,因此具有相同名稱的列發(fā)生沖突并被覆蓋.

                  I tried "SELECT table1.*,table2.* ..." but the returned array keys were not fully qualified so columns with the same name clashed and were overwritten.

                  推薦答案

                  是的,你可以.最簡單的方法是使用 pdo,盡管至少有一些其他擴展可以使用它.

                  Yes, you can. The easiest way is with pdo, although there's at least a few other extensions which are capable of it.

                  在 PDO 對象上設置屬性,而不是 PDOStatment.

                  Set the attribute on the PDO object, not the PDOStatment.

                  $PDO->setAttribute(PDO::ATTR_FETCH_TABLE_NAMES, true);
                  

                  就是這樣.然后你會得到像 $row['myTable.myColumn'] 這樣的關聯(lián)數(shù)組鍵.如果您也獲取對象(例如通過 PDO::FETCH_OBJECT),它也可以工作,所以要小心,因為您需要訪問像 $obj->{'myTable.myColumn'}<這樣的屬性/代碼>

                  That's it. Then you get associative array keys like $row['myTable.myColumn']. It works if you fetch an object too (eg via PDO::FETCH_OBJECT) so beware, because you need to access the properties like $obj->{'myTable.myColumn'}

                  *手冊說 PDO::ATTR_FETCH_TABLE_NAMES 屬性僅受某些驅動程序支持.如果上述方法不起作用,則可能可以代替.

                  *The manual says the PDO::ATTR_FETCH_TABLE_NAMES attribute is only supported by certain drivers. If the above doesn't work, this might work instead.

                  $pdoStatement->setFetchMode(PDO::FETCH_NUM);
                  $pdoStatement->execute();
                  //build our associative array keys
                  $qualifiedColumnNames = array();
                  for ($i = 0; $i < $pdoStatement->columnCount(); $i++) {
                      $columnMeta = $pdoStatement->getColumnMeta($i);
                      $qualifiedColumnNames[] = "$columnMeta[table].$columnMeta[name]";
                  }
                  
                  //fetch results and combine with keys
                  while ($row = $pdoStatement->fetch()) {
                      $qualifiedRow = array_combine($qualifiedColumnNames, $row);
                      print_r($qualifiedRow);
                  }
                  

                  <小時>

                  相同的基本模式用于其他數(shù)據(jù)庫擴展


                  Same basic pattern is used for other database extensions

                  $res = mysql_query($sql);
                  //build our associative array keys
                  $qualifiedColumnNames = array();
                  for ($i = 0; $i < mysql_num_fields($res); $i++) {
                      $columnMeta = mysql_fetch_field($res, $i);
                      $qualifiedColumnNames[] = "$columnMeta[table].$columnMeta[name]";
                  }
                  
                  //fetch results and combine with keys
                  while ($row = mysql_fetch_row($res)) {
                      $qualifiedRow = array_combine($qualifiedColumnNames, $row);
                      print_r($qualifiedRow);
                  }
                  

                  <小時>

                  mysqli

                  $res = $mysqli->query($sql);
                  //build our associative array keys
                  $qualifiedColumnNames = array();
                  foreach ($res->fetch_fields() as $columnMeta) {
                      $qualifiedColumnNames[] = "{$columnMeta->table}.{$columnMeta->name}";
                  }
                  
                  //fetch results and combine with keys
                  while ($row = $res->fetch_row()) {
                      $qualifiedRow = array_combine($qualifiedColumnNames, $row);
                      print_r($qualifiedRow);
                  }
                  

                  這也適用于表別名(在 php 7.1 中測試) - 限定列名將使用表別名.

                  This should also work with table aliases (tested in php 7.1) - the qualified column name will use the table alias.

                  這篇關于SQL 從多個表中選擇 *的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網(wǎng)!

                  【網(wǎng)站聲明】本站部分內容來源于互聯(lián)網(wǎng),旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯(lián)系我們刪除處理,感謝您的支持!

                  相關文檔推薦

                  MySQLi prepared statement amp; foreach loop(MySQLi準備好的語句amp;foreach 循環(huán))
                  Is mysqli_insert_id() gets record from whole server or from same user?(mysqli_insert_id() 是從整個服務器還是從同一用戶獲取記錄?)
                  PHP MySQLi doesn#39;t recognize login info(PHP MySQLi 無法識別登錄信息)
                  mysqli_select_db() expects exactly 2 parameters(mysqli_select_db() 需要 2 個參數(shù))
                  Php mysql pdo query: fill up variable with query result(Php mysql pdo 查詢:用查詢結果填充變量)
                  MySQLI 28000/1045 Access denied for user #39;root#39;@#39;localhost#39;(MySQLI 28000/1045 用戶“root@“l(fā)ocalhost的訪問被拒絕)
                • <small id='zr5nu'></small><noframes id='zr5nu'>

                    <legend id='zr5nu'><style id='zr5nu'><dir id='zr5nu'><q id='zr5nu'></q></dir></style></legend>
                    <i id='zr5nu'><tr id='zr5nu'><dt id='zr5nu'><q id='zr5nu'><span id='zr5nu'><b id='zr5nu'><form id='zr5nu'><ins id='zr5nu'></ins><ul id='zr5nu'></ul><sub id='zr5nu'></sub></form><legend id='zr5nu'></legend><bdo id='zr5nu'><pre id='zr5nu'><center id='zr5nu'></center></pre></bdo></b><th id='zr5nu'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='zr5nu'><tfoot id='zr5nu'></tfoot><dl id='zr5nu'><fieldset id='zr5nu'></fieldset></dl></div>

                        <tbody id='zr5nu'></tbody>

                      • <bdo id='zr5nu'></bdo><ul id='zr5nu'></ul>
                          • <tfoot id='zr5nu'></tfoot>
                            主站蜘蛛池模板: 色资源站 | 中文无码日韩欧 | 黄色在线观看网站 | 免费激情av | 欧美一区二区三区视频在线观看 | 91精品国产91久久久久久吃药 | 色婷婷综合久久久中字幕精品久久 | 欧美一级在线 | 97福利在线| 天天射天天干 | 伊人久久综合 | 欧美激情综合五月色丁香小说 | 亚洲一区二区三区四区五区午夜 | 精品成人一区二区 | 国产日韩一区二区 | 视频1区2区 | 久久大香| 久久精品国产99国产精品 | 亚洲大片一区 | 成人深夜福利 | 国产精品福利在线观看 | 视频一区二区三区四区五区 | 亚洲二区视频 | 日韩一级免费看 | 在线播放91| 精品视频一区二区三区在线观看 | 午夜欧美日韩 | 欧美在线观看网站 | 欧美综合一区二区 | 中文字幕av一区二区三区 | 亚洲男人天堂2024 | 亚洲一区二区三区在线播放 | 国产免国产免费 | 欧美激情精品久久久久久免费 | 精品国产91亚洲一区二区三区www | 欧美三级久久久 | 精品视频一区二区三区 | 国产激情网 | 激情五月婷婷综合 | 久久久久9999亚洲精品 | 精品欧美一区二区三区久久久 |