當前位置:首頁 » 編程語言 » sql中other的用法
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql中other的用法

發布時間: 2022-09-15 01:41:55

sql語句求詳細解釋

整個語句結構是這樣的
select case when then end from ldsysvar where sysvar = ''onerow'''

如果 (select nvl(sum(case factorcode when ''D001'' then factorvalue end),0)
from llotherfactor where feeitemtype=''D'' and clmno=''?CaseNo?'')>0 那麼 least(?je_gf?,?je_gf?+(select nvl(sum(case factorcode when ''D002'' then factorvalue end),0)
from llotherfactor where feeitemtype=''D'' and clmno=''?CaseNo?''), ?amnt?-?compensatetysumpay?) 否則 least((?je_gf?+(select nvl(sum(case factorcode when ''D002'' then factorvalue end),0)
from llotherfactor where feeitemtype=''D'' and clmno=''?CaseNo?''))*0.8,?je_gf?,?amnt?-?compensatetysumpay?)

Ⅱ 在sql developer中怎樣用命令查詢other users中scott中的表

同個實例的直接這樣:
SELECT*FROM[資料庫].[dbo].[scott]

不同實例的這樣:

--
--OPENROWSET支持在連接時制定查詢語句,比較靈活
--OPENDATASOURCE連接字元串可用ADO的連接字元串,但不支持在連接時制定查詢語句
--
--OPENROWSET:連接字元串
--Windows身份:Server=資料庫伺服器;Trusted_Connection=Yes;
--賬號密碼登錄:Server=資料庫伺服器;PWD=密碼;UID=賬號;
--賬號密碼登錄:'資料庫伺服器';'賬號';'密碼'
--
--OPENDATASOURCE:連接字元串
--Windows身份:Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=資料庫伺服器;DataSource=資料庫名
--賬號密碼登錄:Provider=SQLOLEDB.1;Password=密碼;PersistSecurityInfo=True;UserID=賬號;InitialCatalog=資料庫伺服器;DataSource=資料庫名
--
--開啟高級設置
EXECsp_configure'showadvancedoptions',1
RECONFIGURE
--開啟外圍設置
EXECsp_configure'AdHocDistributedQueries',1
RECONFIGURE
GO
--
--OPENROWSET
--Windows身份
--
SELECT*
FROMOPENROWSET('SQLOLEDB','Server=127.0.0.1,2434;Trusted_Connection=Yes','SELECT*FROMjfdf1.dbo.xtszUNIONALLSELECT*FROMjfdf2.dbo.xtsz')
--
--賬號密碼登錄
--
SELECT*
FROMOPENROWSET('SQLOLEDB','Server=127.0.0.1,2434;PWD=932kj;UID=sa','SELECT*FROMjfdf1.dbo.xtsz')
--
--賬號密碼登錄
--
SELECT*
FROMOPENROWSET('SQLOLEDB','127.0.0.1,2434';'sa';'932kj','SELECT*FROMjfdf1.dbo.xtsz')
GO
--
--OPENROWSET
--Windows身份
--
SELECT*
FROMOPENDATASOURCE('SQLOLEDB','Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=jfdf1;DataSource=127.0.0.1,2434').jfdf2.dbo.xtsz
--
--賬號密碼登錄
--
SELECT*
FROMOPENDATASOURCE('SQLOLEDB','Provider=SQLOLEDB.1;Password=932kj;PersistSecurityInfo=True;UserID=sa;InitialCatalog=jfdf1;DataSource=127.0.0.1,2434').jfdf2.dbo.xtsz
GO
--關閉高級設置
EXECsp_configure'AdHocDistributedQueries',0
RECONFIGURE
--關閉外圍設置
EXECsp_configure'showadvancedoptions',0
RECONFIGURE
GO

Ⅲ 怎樣用sql語句添加數據到不同的表中

INSERT ALL是9i新增的語法,它擴充了原有的INSERT語句,使得INSERT語句從原來的只能插入到一張表發展到可以同時插入多張表,還可以根據判斷條件來決定每條記錄插入到哪張或哪幾張表中。

下面看幾個簡單的例子:

SQL> CREATE TABLE TABLE_STORAGE
2 (
3 TABLE_NAME VARCHAR2(30),
4 TABLESPACE_NAME VARCHAR2(30),
5 PCT_FREE NUMBER,
6 PCT_USED NUMBER,
7 INI_TRANS NUMBER,
8 MAX_TRANS NUMBER,
9 INITIAL_EXTENT NUMBER,
10 NEXT_EXTENT NUMBER,
11 MIN_EXTENTS NUMBER,
12 MAX_EXTENTS NUMBER,
13 PCT_INCREASE NUMBER,
14 FREELISTS NUMBER,
15 FREELIST_GROUPS NUMBER
16 );

表已創建。

SQL> CREATE TABLE TABLE_STAT
2 (
3 TABLE_NAME VARCHAR2(30),
4 NUM_ROWS NUMBER,
5 BLOCKS NUMBER,
6 EMPTY_BLOCKS NUMBER,
7 AVG_SPACE NUMBER,
8 CHAIN_CNT NUMBER,
9 AVG_ROW_LEN NUMBER
10 );

表已創建。

SQL> INSERT ALL
2 INTO TABLE_STORAGE VALUES (TABLE_NAME, TABLESPACE_NAME, PCT_FREE, PCT_USED,
3 INI_TRANS, MAX_TRANS, INITIAL_EXTENT, NEXT_EXTENT, MIN_EXTENTS, MAX_EXTENTS,
4 PCT_INCREASE, FREELISTS, FREELIST_GROUPS)
5 INTO TABLE_STAT VALUES (TABLE_NAME, NUM_ROWS, BLOCKS, EMPTY_BLOCKS, AVG_SPACE,
6 CHAIN_CNT, AVG_ROW_LEN)
7 SELECT * FROM USER_TABLES;

已創建54行。

SQL> SELECT COUNT(*) FROM TABLE_STORAGE;

COUNT(*)
----------
27

SQL> SELECT COUNT(*) FROM TABLE_STAT;

COUNT(*)
----------
27

SQL> SELECT COUNT(*) FROM USER_TABLES;

COUNT(*)
----------
27

SQL> DROP TABLE TABLE_STAT;

表已丟棄。

SQL> DROP TABLE TABLE_STORAGE;

表已丟棄。

上面是最簡單的INSERT ALL語句的實現,下面看看帶條件的INSERT ALL語句。

SQL> CREATE TABLE TABLE_ALL (TABLE_NAME VARCHAR2(30));

表已創建。

SQL> CREATE TABLE INDEX_ALL (INDEX_NAME VARCHAR2(30));

表已創建。

SQL> CREATE TABLE OBJECT_OTHER (OBJECT_NAME VARCHAR2(30), OBJECT_TYPE VARCHAR2(30));

表已創建。

SQL> INSERT ALL
2 WHEN (OBJECT_TYPE = 'TABLE') THEN
3 INTO TABLE_ALL VALUES (OBJECT_NAME)
4 WHEN (OBJECT_TYPE = 'INDEX') THEN
5 INTO INDEX_ALL VALUES (OBJECT_NAME)
6 ELSE
7 INTO OBJECT_OTHER
8 SELECT OBJECT_NAME, OBJECT_TYPE FROM USER_OBJECTS
9 ;

已創建91行。

SQL> SELECT COUNT(*) FROM USER_OBJECTS WHERE OBJECT_TYPE = 'TABLE';

COUNT(*)
----------
27

SQL> SELECT COUNT(*) FROM USER_OBJECTS WHERE OBJECT_TYPE = 'INDEX';

COUNT(*)
----------
14

SQL> SELECT COUNT(*) FROM USER_OBJECTS
2 WHERE OBJECT_TYPE NOT IN ('TABLE', 'INDEX');

COUNT(*)
----------
50

SQL> SELECT COUNT(*) FROM TABLE_ALL;

COUNT(*)
----------
27

SQL> SELECT COUNT(*) FROM INDEX_ALL;

COUNT(*)
----------
14

SQL> SELECT COUNT(*) FROM OBJECT_OTHER;

COUNT(*)
----------
50

SQL> DROP TABLE TABLE_ALL;

表已丟棄。

SQL> DROP TABLE INDEX_ALL;

表已丟棄。

SQL> DROP TABLE OBJECT_OTHER;

表已丟棄。

下面看一下INSERT ALL和INSERT FIRST的區別:

SQL> CREATE TABLE TABLESPACE_USERS (NAME VARCHAR2(30), TYPE VARCHAR2(30));

表已創建。

SQL> CREATE TABLE TABLE_ALL (TABLE_NAME VARCHAR2(30));

表已創建。

SQL> INSERT ALL
2 WHEN (SEGMENT_TYPE = 'TABLE') THEN
3 INTO TABLE_ALL VALUES (SEGMENT_NAME)
4 WHEN (TABLESPACE_NAME = 'USERS') THEN
5 INTO TABLESPACE_USERS VALUES (SEGMENT_NAME, SEGMENT_TYPE)
6 SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME
7 FROM USER_SEGMENTS;

已創建69行。

SQL> SELECT COUNT(*) FROM TABLE_ALL;

COUNT(*)
----------
21

SQL> SELECT COUNT(*) FROM TABLESPACE_USERS;

COUNT(*)
----------
48

SQL> SELECT COUNT(*) FROM TABLESPACE_USERS WHERE TYPE = 'TABLE';

COUNT(*)
----------
18

SQL> TRUNCATE TABLE TABLE_ALL;

表已截掉。

SQL> TRUNCATE TABLE TABLESPACE_USERS;

表已截掉。

SQL> INSERT FIRST
2 WHEN (SEGMENT_TYPE = 'TABLE') THEN
3 INTO TABLE_ALL VALUES (SEGMENT_NAME)
4 WHEN (TABLESPACE_NAME = 'USERS') THEN
5 INTO TABLESPACE_USERS VALUES (SEGMENT_NAME, SEGMENT_TYPE)
6 SELECT SEGMENT_NAME, SEGMENT_TYPE, TABLESPACE_NAME
7 FROM USER_SEGMENTS;

已創建51行。

SQL> SELECT COUNT(*) FROM TABLE_ALL;

COUNT(*)
----------
21

SQL> SELECT COUNT(*) FROM TABLESPACE_USERS;

COUNT(*)
----------
30

SQL> SELECT COUNT(*) FROM TABLESPACE_USERS WHERE TYPE = 'TABLE';

COUNT(*)
----------
0

最後看一下多表插入語句的限制條件:

只能對表執行多表插入語句,不能對視圖或物化視圖執行;

不能對遠端表執行多表插入語句;

不能使用表集合表達式;

不能超過999個目標列;

在RAC環境中或目標表是索引組織表或目標表上建有BITMAP索引時,多表插入語句不能並行執行;

多表插入語句不支持執行計劃穩定性;

多表插入語句中的子查詢不能使用序列。

Ⅳ sql中要提取other欄位是空的數據要怎麼寫

select * from mydb where other is null;

補充一下:查詢不是空的

select * from mydb where other is not null;

---
以上,希望對你有所幫助。

Ⅳ mysql 中要查詢表parter,other欄位中出現字元處'簡介'兩次以上的所有記錄sql語句該怎麼寫

select * from parter where other like "%簡介%簡介%"

Ⅵ SQL語句實現關鍵字查詢,回答好了有追加分 C#開發 一張表 有姓名 性別 地址 一個textbox 輸入關鍵字 點按

select * from student where 姓名 like '%textbox中的內容%' or 性別 like '%textbox中的內容%' or 地址 like '%textbox中的內容%'

這樣就能得到一個模糊查詢之後的結果

恩 試試吧 我所說的這個 '%textbox中的內容%' 這樣是你sql裡面生成的語句 在c#裡面 實現的時候 是'%'+textbox.Text.Trim()+'%' 是這樣的 你看看結果
比如說 寫string sql="select * from student where 姓名 like '%"+textbox.Text.Trim()+"%'" 依次類推 是這樣的

暈。。。俺加上。。。最近兩天 感冒 頭腦不清醒。。 。。哈哈 哈哈

Ⅶ 如何查詢一個索引在哪些sql語句中使用

create table
(
id int identity(1, 1) not null primary key,
other_column varchar(50)
)

-- 對表設置主鍵的同時,資料庫會自動的創建一個以主鍵作為名稱的唯一索引的。

Ⅷ sql 2000中 select case when then 的用法

CASE WHEN condition THEN result

[WHEN ...]

[ELSE result]
END

CASE
子句可以用於任何錶達式可以有效存在的地方。 condition 是一個返回boolean 的表達式。 如果結果為真,那麼
CASE
表達式的結果就是符合條件的 result。 如果結果為假,那麼以相同方式搜尋任何隨後的 WHEN 子句。
如果沒有 WHEN
condition 為真,那麼 case 表達式的結果就是在
ELSE 子句里的值。
如果省略了 ELSE
子句而且沒有匹配的條件, 結果為 NULL。

例子:

SELECT * FROM test;

a
---

1

2

3

SELECT a,

CASE WHEN a=1 THEN 'one'

WHEN a=2 THEN 'two'

ELSE 'other'

END

FROM test;

a | case
---+-------

1 | one

2 | two

3 | other

所有 result 表達式的數據的類型都必須可以轉換成單一的輸出類型。

下面這個"簡單的" CASE
表達式是上面的通用形式的一個特殊的變種。

CASE expression

WHEN value THEN result

[WHEN ...]

[ELSE result]
END

先計算 expression 的值, 然後與所有在WHEN
子句里聲明的 value 對比,直到找到一個相等的。 如果沒有找到匹配的,則返回在
ELSE 子句里的
result (或者 NULL)。 這個類似於 C 里的
switch
語句。

上面的例子可以用簡單 CASE
語法來寫:

SELECT a,

CASE a WHEN 1 THEN 'one'

WHEN 2 THEN 'two'

ELSE 'other'

END

FROM test;

a | case
---+-------

1 | one

2 | two

3 | other

CASE
表達式並不計算任何對於判斷結果並不需要的子表達式。 比如,下面是一個可以避免被零除的方法:

SELECT ... WHERE CASE WHEN x <> 0 THEN y/x > 1.5 ELSE false END;

Ⅸ sql多欄位聯查問題

tableid, uid1, uid2, other,uid, name, other這些是兩個表中的欄位嗎?

兩個表中關聯的欄位是uid嗎?就是uid=uid1;uid=uid2嗎?這樣的話就不可以了耶!

Ⅹ 怎麼使用SQL語句,在update中對一條記錄進行加值

摘要 UPDATE mytable SET myfield='value' WHERE other_field='other_value';