用Distinct在MySQL中查詢多條不重複記錄值

在使用mysql時,有時需要查詢出某個欄位不重複的記錄,雖然mysql提供有distinct這個關鍵字來 過濾掉多餘的重複記錄只保留一條,但往往只用它來返回不重複記錄的條數,而不是用它來返回不重記錄的所有值。其原因是distinct只能返回它的目標欄位,而無法返回其它欄位,這個問題讓我困擾了很久,用distinct不能解決的話,我只有用二重迴圈查詢來解決,而這樣對於一個資料量非常大的站來說 ,無疑是會直接影響到效率的。所以我花了很多時間來研究這個問題,網上也查不到解決方案,期間把 朋友拉來幫忙,

一個簡單的mysql資料庫分頁的程式模板

下面是一個簡單的php串連mysql資料庫進行資料分頁顯示的模版.可以按注釋說明資訊進行修改,裡面的sql語句是可以自己改的.注意分析和觀察裡面相關分頁部分的代碼的書寫和實現的方式.<?php$link = mysql_connect('localhost', 'root', '') or die('mysql  database connect error');mysql_select_db('your database') or die('the selected  database 

MySQL常用操作命令

1、啟動MySQL伺服器實際上上篇已講到如何啟動MySQL。兩種方法:一是用winmysqladmin,如果機器啟動時已自動運行,則可直接進入下一步操作。二是在DOS方式下運行d:mysqlbinmysqld2、進入mysql互動操作介面在DOS方式下,運行: d:mysqlbinmysql出現: mysql 的提示符,此時已進入mysql的互動操作方式。如果出現 "ERROR 2003: Can′t connect to MySQL server on

從MySQL轉向ADODB的方法

進階材料Insert 和 Update假設現在你要把下面的資料插入到資料庫中.ID = 3TheDate=mktime(0,0,0,8,31,2001) /* 31st August 2001 */Note= sugar why don't we call it off當你使用另外一個資料庫的時候,你的插入操作可能不會成功。第一個問題是每個資料庫都有不同的預設日期格式。MySQL預設格式是YYYY-MM-DD

詳解MySQL與客戶機的串連

本文通過示範如何使用mysql客戶程式與資料庫伺服器串連。mysql(有時稱為“終端監視器 ”或只是“監視”)是一個互動式程式,允許你串連一個MySQL伺服器,執行查詢並察看 結果。mysql可以用於批模式:你預先把查詢放在一個檔案中,然後告訴mysql執行檔案的內容。使用 mysql的兩個方法都在這裡涉及。為了看清由mysql提供的一個選擇項目表了,用--help選項調用它:shell> mysql

使用SQL操作MySQL資料庫

從本節開始正式介紹各種SQL語句。本節介紹有關資料庫級的SQL以及相關操作,查看、建立和刪除等 操作。用SHOW顯示已有的資料庫句法:SHOW DATABASES [LIKE wild]如果使用LIKE wild部分,wild字串可以是一個使用SQL的“%”和“_”通配 符的字串。功能:SHOW DATABASES列出在MySQL伺服器主機上的資料庫。你可以嘗試下面舉例,觀察輸出結果,例如:mysql>show databases;+----

通向MySQL神秘王國的圖形化之路

MySQL GUI Tools是一套圖形化案頭應用工具套裝,可以用來管理MySQL伺服器。該套裝工具包含三個 工具:MySQL Query Browser、MySQL Administrator和MySQL Migration Assistant(僅支援Windows平台 )。在本文中,我們將介紹前兩個工具,看一下它們是如何協助我們在不使用命令列的方式來管理MySQL 資料庫。MySQL GUI Tools的安裝非常簡單,在Ubuntu、Debian或Fedora Linux上,你可以通過

如何使用“MySQL-Proxy”實現讀寫分離

MySQL-Proxy處在MySQL資料庫客戶和服務端之間的程式,它支援嵌入性指令碼語言Lua。這個代理可以 用來分析、監控和變換(transform)通訊資料,它支援非常廣泛的使用情境:·Server Load Balancer和容錯移轉處理·查詢分析和日誌·SQL宏(SQL macros)·查詢重寫(query rewriting)·執行shell命令MySQL

巧用MySQL InnoDB引擎鎖機制解決死結問題

最近,在項目開發過程中,碰到了資料庫死結問題,在解決問題的過程中,筆者對MySQL InnoDB引擎鎖機制的理解逐步加深。案例如下:在使用Show innodb status檢查引擎狀態時,發現了死結問題:*** (1) TRANSACTION:TRANSACTION 0 677833455, ACTIVE 0 sec, process no 11393, OS thread id 278546 starting index readmysql tables in use 1, locked 1

教你使用MySQL觸發器自動更新Memcache

mysql 5.1支援觸發器以及自訂函數介面(UDF)的特性,如果配合libmemcache以及Memcached Functions for MySQL,就能夠實現memcache的自動更新。簡單記錄一下安裝測試步驟。安裝步驟安裝memcached,這個步驟很簡單,隨處可見。安裝mysql server 5.1RC,安裝辦法也很福士,不廢話 了。編譯libmemcached,解壓後安裝即可./configure; make; make install編譯Memcached Functions

Win下mysql備份恢複命令

假設mysql安裝在c:盤,mysql資料庫的使用者名稱是root,密碼是123456,資料庫名是database_name,在d:盤根目錄下面存放備份資料庫,備份資料庫名字為backup20070713.sql(20070713.sql為備份日期)備份資料庫:mysqldump -uroot -p123456 database_name>d:/backup20070713.sql恢複資料庫:刪除原有資料庫,建立資料庫,把備份資料庫匯入。mysqladmin -uroot -p123456

MYSQL中設列的預設值為Now()

MySQL目前不支援列的Default為函數的形式,如達到你某列的預設值為當前更新日期與時間的功能,你可以使用TIMESTAMP列類型下面就詳細說明TIMESTAMP列類型TIMESTAMP列類型TIMESTAMP值可以從1970的某時的開始一直到2037年,精度為一秒,其值作為數字顯示。TIMESTAMP值顯示尺寸的格式如下表所示::+---------------+----------------+| 列類型    | 顯示格式    || TIMESTAMP(14) |

MySQL資料庫中尋找執行效率慢的SQL語句

啟動Mysql時加參數--log-slow-queries來記錄執行時間超過long_query_time秒的sql:/usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql--user=mysql --pid-file=/var/run/mysqld/mysqld.pid--skip-locking --port=3306 --socket=/var/run/mysqld/mysqld.sock

MySQL常見問題集錦

常見問題集錦MySQL總是崩潰首先你應該試著找出問題mysqld守護進程是否死掉或你的問題是否與你的客戶有關。你可以用mysqladmin version檢查你的mysqld伺服器正常執行了多長時間,如果mysqld死了,你可以在檔案“mysql-data-directory/'hostname'.err”中找到其原因。使用MySQL時的一些常見錯誤MySQL server has gone

MySQL資料庫索引查詢最佳化的分享

問題描述:我們要訪問的表是一個非常大的表,四千萬條記錄,id是主鍵,program_id上建了索引。執行一條SQL:select * from program_access_log where program_id between 1 and 4000這條SQL非常慢。我們原以為處理記錄太多的原因,所以加了id限制,一次唯讀五十萬條記錄select * from program_access_log where id between 1 and 500000 and program_id

MySQL百萬級高並髮網站實戰攻略

在一開始接觸PHP接觸MYSQL的時候就聽不少人說:“MySQL就跑跑一天幾十萬IP的小站還可以,要是幾百萬IP就不行了”,原話不記得了,大體就是這個意思。一直也沒有好的機會去驗證這個說法,一是從沒有接手過這麼大流量的網站,二是平時工作也比較忙,懶得去管這些,反正現在用不著,抱著這個想法把這個問題一直留到了最近,才把這個問題搞明白。就在前幾天公司旗下一網站(由於這是公司的商業內容我就不說是那個網站了)以下簡稱A站,這A站在年後流量猛增從一天的七八十萬猛跑到了好幾百萬的IP

MySQL資料庫兩台主機同步實戰

MySQL支援單向、非同步複製,複製過程中一個伺服器充當主伺服器,而一個或多個其它伺服器充當從伺服器。主伺服器將更新寫入二進位記錄檔,並維護記錄檔的一個索引以追蹤記錄檔迴圈。當一個從伺服器串連到主伺服器時,它通知主伺服器從伺服器在日誌中讀取的最後一次成功更新的位置。從伺服器接收從那時起發生的任何更新,然後封鎖並等待主伺服器通知下一次更新。在實際項目中,兩台分佈於異地的主機上安裝有MySQL資料庫,兩台伺服器互為主備,客戶要求當其中一台機器出現故障時,另外一台能夠接管伺服器上的應用,這就需要兩台資

最佳化MySQL插入方法的五個妙招

以下是涉及到插入表格的查詢的5種改進方法:1)使用LOAD DATA

解決MySQL 5.0不能使用自動增加欄位問題

問題:MySQL 5.0不能使用自動增加欄位。具體原因:引起的原因是在MySQL5.0.2版本中的The Server SQL Mode 中新加了幾種 sql_mode,並且在sql的my.ini檔案中的sql-mode

CentOS下MySql 5.0.x的安裝、最佳化及安全設定

下載頁面:http://dev.mysql.com/downloads/mysql/5.0.html#downloads到頁面底部,找到Source downloads,這個是源碼版本,下載第1個Tarballgroupadd mysql建立一個名為mysql的使用者組useradd -g mysql mysql在mysql使用者組下建立一個名為mysql的使用者gunzip < mysql-VERSION.tar.gz | tar -xvf -解壓下載到的.gz檔案cd

總頁數: 2483 1 .... 1164 1165 1166 1167 1168 .... 2483 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.