查詢當前這周的資料 SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now()); 查詢上周的資料 SELECT name,submittime FROM enterprise WHERE YEARWEEK(date_format(submittime,'%Y-%m-%d')) = YEARWEEK(now())-1; 查詢當前月份的資料
假設有一資料表的狀態欄位設計為varchar類型,有以下值:NULL,pending,pending refund,refund,cancel. 我們知道查詢狀態為cancel的訂單,SQL語句可以這樣寫:SELECT o.oid,o.moneyreceipt,o.moneyget,o.thecurrency,o.status FROM qorder o WHERE o.status = 'cancel' SQL語句能查詢出正確的資料,但是當我們想查詢狀態為非cancel的訂單時,可能會出麻煩,
mysql通過觸發器實現兩個表的同步 目前,在本地測試成功。 假設本地的兩個資料庫a和b,a下有表table1(id, val) b下有表table2(id, val) 假設希望當table1中資料更新,table2中資料同步更新。 代碼: DELIMITER $$ CREATE /*[DEFINER = { user | CURRENT_USER }]*/ TRIGGER `a`.`觸發器名` BEFORE UPDATE ON `a`.`table1` FOR EACH ROW BEGIN
一、概念 MySQL Cluster採用一系列的Disk Data objects來實現磁碟表。 Tablespaces:作用是作為其他Disk Data objects的容器。 Undo log files:儲存事務進行復原需要的資訊,一個或者多個undo log files組成一個log files group,最後,該log file group關聯到一個tablespaces。 Data files:作用是儲存表中的資料,data file直接關聯到tablespaces。
怎麼進入mysql命令列呢? mysql的安裝目錄下面有個bin目錄,先用命令列進入該目錄,然後用 mysql -uroot -p123456 來登入(注意:使用者名稱和密碼不用包含“”) 命令: show processlist; 如果是root帳號,你能看到所有使用者的當前串連。如果是其它普通帳號,只能看到自己佔用的串連。 show processlist;只列出前100條,如果想全列出請使用show full processlist; mysql> show processlist;
--按某一欄位分組取最大(小)值所在行的資料 複製代碼 代碼如下:/* 資料如下: name val memo a 2 a2(a的第二個值) a 1 a1--a的第一個值 a 3 a3:a的第三個值 b 1 b1--b的第一個值 b 3 b3:b的第三個值 b 2 b2b2b2b2 b 4 b4b4 b 5 b5b5b5b5b5 */ --建立表並插入資料: 複製代碼 代碼如下:create table tb(name varchar(10),val int,memo varchar(20))
SQL模式比對允許你使用“_”匹配任何單個字元,而“%”匹配任意數目字元(包括零字元)。在 MySQL中,SQL的模式預設是忽略大小寫。下面給出一些例子。注意使用SQL模式時,不能使用=或!=;而應使用LIKE或NOT LIKE比較操作符。要想找出以“b”開頭的名字:mysql> SELECT * FROM pet WHERE name LIKE 'b%';+--------+--------+---------+------+------------+------------+|
串連與斷開伺服器串連伺服器通常需要提供一個MySQL使用者名稱並且很可能需要一個 密碼。如果伺服器運行在登入伺服器之外的其它機器上,還需要指定主機名稱:shell> mysql -h host -u user -pEnter password: ********host代表MySQL伺服器啟動並執行主機名稱,user代表MySQL賬戶使用者名稱,******** 代表你的密碼。如果有效,你應該看見mysql>提示符後的一些介紹資訊:shell> mysql -h host
先按照下面的表結構建立mysql_order_by_test資料表,我們用執行個體一點一點告訴你,MySQL order by的用法。 ORDER BY uid ASC 按照uid正序查詢資料,也就是按照uid從小到大排列 ORDER BY uid DESC 按照uid逆序查詢資料,也就是按照uid從大到小排列 我們來看 SELECT * FROM mysql_order_by_test ORDER BY uid ASC 這條語句是按照uid正序查詢資料,也就是按照uid從小到大排列
(1)提高資料庫插入效能中心思想:盡量將資料一次性寫入到Data File和減少資料庫的checkpoint 操作。這次修改了下面四個配置項: 1)將 innodb_flush_log_at_trx_commit 配置設定為0;按過往經驗設定為0,插入速度會有很大提高。 0: Write the log buffer to the log file and flush the log file every second, but do nothing at transaction commit.