① db2語句轉mysql語句時,db2語句的with ur怎麼處理
db2的merge into語句怎麼改寫成mysql的?
本處使用 db2 –t 進入系統。
-- 源表
db2 => CREATE TABLE test_from (id INT, val VARCHAR(20));
DB20000I SQL 命令成功完成。
-- 目標表
db2 => CREATE TABLE test_to (id INT, val VARCHAR(20));
DB20000I SQL 命令成功完成。
-- 插入源表
db2 => INSERT INTO test_from VALUES (1, 'A');
DB20000I SQL 命令成功完成。
db2 => INSERT INTO test_from VALUES (2, 'B');
DB20000I SQL 命令成功完成。
② sql查詢報表,怎麼按天查
select convert(char(10),INSERT_TIME,111)as 時間段,count(*)
from KM_T_TEST
group by convert(char(10),INSERT_TIME,111)
③ 如何對hibernate單個sql語句加with ur
我寫個簡單的例子,樓主可以參考下public int getLogin(String username,String password)
{ String sql="select * from user_table where username=? and password=?";
SQLQuery query=getSession().createSQLQuery(sql).addEntity(UserTable.class);
query.setString(0,username);
query.setString(1,password);
return Integer.parseInt(query.uniqueResult().toString());
}
public static void main(String[] args) {
new UserTableDAO().getLogin("zhang","yuan");
}
④ SQL 現在是按天查詢怎麼修改成按日期查詢
直接group by INSERT_TIME 就可以了。
select INSERT_TIME as INSERT_TIME時間段,count(*) as 插入的數據數量 from KM_T_TEST group by INSERT_TIME with ur;
(默認INSERT_TIME 的datatype是 date)
⑤ 請問這句sql語句我在select里加了emp.no(在最後)之後,如果group by里不加emp.no,就會報錯,這是為什麼
因為該查詢的選擇欄位中有統計函數count, 那麼在其選擇列表中出現的且不是count中出現的欄位都必須作為分組的欄位。根據這個原則,在select的選擇欄位中有e.emp_no欄位,那麼其必須出現在group by中。如果不加的話,當然會報錯了。
⑥ sql 語句中with ur是什麼意思
UR:UR-Uncommitted Read 指的是「未提交讀」。是sql執行時的一種隔離級別,允許臟讀,不加行鎖。
在DB2中,共有四種隔離級別:分別是RS,RR,CS,UR。
作用是在select的時候,不需要對update的數據進行等待。
(6)sqlwithur擴展閱讀:
1、ur(Uncommited Read) 「臟讀「,在沒有提交數據的時候能夠讀到更新的數據。
2、cs(Cursor Stability) 在一個事務中進行查詢時,允許讀取提交前的數據,數據提交後,當前查詢就可以讀取到數據,update數據的時候並不鎖表。
3、rs(Read Stability) 在一個事務中進行查詢時,不允許讀取其他事務update的數據,允許讀取到其他事務提交的新增數據。
4、rr(Repeatable Read) 在一個事務中進行查詢時,不允許任何對這個查詢表的數據修改。
⑦ SQL如何統計多表總記錄數
你是指5張表的總記錄還是相關的記錄?
SELECT SUN(C) FROM (
SEELCT COUNT(*) C FROM TABLE1
UNION ALL
SEELCT COUNT(*) C FROM TABLE2
UNION ALL
SEELCT COUNT(*) C FROM TABLE3
UNION ALL
SEELCT COUNT(*) C FROM TABLE4
UNION ALL
SEELCT COUNT(*) C FROM TABLE5
);
或者:
SELECT COUNT(*) FROM TABLE1 A
INNER JOIN TABLE2 B ON A.ID=B.ID
INNER JOIN TABLE3 C ON C.ID=B.ID
INNER JOIN TABLE4 D ON D.ID=C.ID
INNER JOIN TABLE5 E ON E.ID=D.ID
⑧ DB2 資料庫:因為資料庫亂碼java.sql.ResultSet,結果集返回的時候getString()丟失字元
先把String類型轉換成某種類型編碼如 utf-8,自己可以多次試驗如可以寫gbk
Bytes[] ss =s.getBytes("iso-8859-1"));
把數組 ss轉換成String
String str=new String(ss,"utf-8")
反正多次試驗不同編碼查看資料庫是否還亂碼不
⑨ SQL 兩個欄位去重
selectdistincto.name,c2.email_addrfromt;
t是樓主查詢結果,distinct會同時作用兩個欄位
⑩ 如何在db2命令行運行sql必知必會例子
db2 => connect to dbName user xxx using password
db2 => sql語句
如果要執行一個sql腳本文件:
db2 => quit
c:\> db2 -tvf sql文件名
db2 -td@ -f filename
@是語句結束符。
E:\>db2 ? options
db2 [option ...] [db2-command | sql-statement |
[? [phrase | message | sqlstate | class-code]]]
option:-a、-c、-e{c|s}、-finfile、-lhistfile、-n、-o、-p、-rreport、-s、-t、
-td;、-v、-w、-x 和 -zoutputfile。
選項 描述 預設設置
------ ---------------------------------------- ---------------
-a 顯示 SQLCA OFF
-c 自動落實 ON
-e 顯示 SQLCODE/SQLSTATE OFF
-f 讀取輸入文件 OFF
-l 將命令記錄到歷史文件中 OFF
-n 除去換行字元 OFF
-o 顯示輸出 ON
-p 顯示 db2 互動式提示符 ON
-r 將輸出報告保存到文件 OFF
-s 在命令出錯時停止執行 OFF
-t 設置語句終止字元 OFF
-v 回送當前命令 OFF
-w 顯示 FETCH/SELECT 警告消息 ON
-x 不列印列標題 OFF
-z 將所有輸出保存到輸出文件 OFF
注意:
使用 DB2OPTIONS 環境變數定製選項預設值。
緊跟選項字母後的減號(-)使該選項關閉。
使用 UPDATE COMMAND OPTIONS 更改選項設置(以互動式或
文件輸入方式)。
只能提供nt環境下編寫腳本的例子給你以供參考:
腳本樣例:
db2 connect to yourdb user yourname using yourpassword
db2 insert into newuser(username,password,email) values('Amy','1234','[email protected]')
db2 insert into newuser(username,password,email) values('Judy','1234','[email protected]')
db2 commit
db2 disconnect yourdb
運行腳本: 運行db2cmd X:\XXX.bat
以下摘自本論壇的FAQ可參考:
"
在命令窗口中運行DB2腳本,可用 db2 -svtf 腳本文件名 來實現。
例如,腳本文件名為sample.sql,運行:db2 -svtf sample.sql
參數中:
s 代表遇到錯誤時中止運行腳本
v 代表輸出結果到屏幕
t 指以;號作為每行的分隔符
f 指後面需跟腳本文件名 "---此摘錄版權歸斑竹非本人所有
具體在AS400如何編寫腳本非常遺憾.
db2 -x select SERIALNO from tabname where clause
C:>db2 attach to db2164 user ccp
輸入 ccp 的當前密碼:
實例連接信息
實例伺服器 = DB2/NT 8.2.0
授權標識 = CCP
本地實例別名 = DB2164
C:>db2 connect to dw164 user ccp
輸入 ccp 的當前密碼:
資料庫連接信息
資料庫伺服器 = DB2/NT 8.2.0
SQL 授權標識 = CCP
本地資料庫別名 = DW164
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
CUST_ID NOW_PRED_S LOAD_TIME
-------------------- -------------------- --------------------------
3094736. ZFS 2008-05-07-10.02.00.453000
3145886. ZFS 2008-05-07-10.02.00.453000
2 條記錄已選擇。
C:>db2 list command options
命令行處理器選項設置
後端進程等待時間(秒) (DB2BQTIME) = 1
連接至後端的重試次數 (DB2BQTRY) = 60
請求隊列等待時間(秒) (DB2RQTIME) = 5
輸入隊列等待時間(秒) (DB2IQTIME) = 5
命令選項 (DB2OPTIONS) = +m
選項 描述 當前設置
------ ---------------------------------------- ---------------
-a 顯示 SQLCA OFF
-c 自動落實 ON
-d 檢索並顯示 XML 聲明 OFF
-e 顯示 SQLCODE/SQLSTATE OFF
-f 讀取輸入文件 OFF
-i 顯示 XML 數據並帶有縮進 OFF
-l 將命令記錄到歷史記錄文件中 OFF
-m 顯示受影響的行數 OFF
-n 除去換行字元 OFF
-o 顯示輸出 ON
-p 顯示互動式輸入提示符 ON
-q 保留空格和換行符 OFF
-r 將輸出保存到報告文件 OFF
-s 在命令出錯時停止執行 OFF
-t 設置語句終止字元 OFF
-v 回傳當前命令 OFF
-w 顯示 FETCH/SELECT 警告消息 ON
-x 不列印列標題 OFF
-z 將所有輸出保存到輸出文件 OFF
C:>db2set DB2OPTIONS=-x
C:>db2 select * from CCP_STS1 fetch first 2 rows only with ur
4654908. ZFS 2008-05-07-10.02.00.453000
3716687. ZFS 2008-05-07-10.02.00.453000