日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

oracle使用关键字做表字段名_ArcGIS SQL使用

發(fā)布時(shí)間:2024/9/27 数据库 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 oracle使用关键字做表字段名_ArcGIS SQL使用 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

本主題將介紹 ArcGIS 中的選擇表達(dá)式所用的常規(guī)查詢的各個(gè)元素。ArcGIS 中的查詢表達(dá)式使用常規(guī) SQL 語法。

警告:

SQL 語法不適用于使用字段計(jì)算器計(jì)算字段。

字段

在 SQL 表達(dá)式中指定字段時(shí),如果該字段名可能產(chǎn)生岐義(比如與 SQL 保留關(guān)鍵字相同),則需提供一個(gè)分隔符。

由于存在許多保留關(guān)鍵字,并且后續(xù)版本中還能添加新的保留關(guān)鍵字,所以建議您始終使用分隔符將字段名稱括起來。

DBMS 和 DBMS 之間的字段名分隔符有所不同。如果要查詢?nèi)魏位谖募臄?shù)據(jù)(例如,文件地理數(shù)據(jù)庫、ArcSDE 地理數(shù)據(jù)庫數(shù)據(jù),或者 ArcIMS 要素類或影像服務(wù)子圖層中的數(shù)據(jù)),可以將字段名稱用雙引號括起:

"AREA"

如果要查詢個(gè)人地理數(shù)據(jù)庫數(shù)據(jù),可以將字段名稱用方括號括起:

[AREA]

對于個(gè)人地理數(shù)據(jù)庫柵格數(shù)據(jù)集,應(yīng)將字段名稱用雙引號括起:

"AREA"

對于文件地理數(shù)據(jù)庫數(shù)據(jù),您可以將字段名稱用雙引號括起,但是通常不需要。

AREA

字符串

查詢中的字符串必須始終用單引號括起。例如:

STATE_NAME = 'California'
  • 表達(dá)式中的字符串區(qū)分大小寫。對于要素類和表,可以用 UPPER 或 LOWER 函數(shù)設(shè)置所選項(xiàng)的大小寫。例如:

    UPPER(STATE_NAME) = 'RHODE ISLAND'
  • 個(gè)人地理數(shù)據(jù)庫要素類和表中的字符串不區(qū)分大小寫。如果需要,可以使用與 UPPER 或 LOWER 等效的 UCASE 和 LCASE 函數(shù)。

  • 如果字符串包含單引號,您首先需要使用另一單引號作為轉(zhuǎn)義字符。例如:

    NAME = 'Alfie''s Trough'

進(jìn)行部分字符串搜索所用的通配符還取決于所要查詢的數(shù)據(jù)源。例如,在基于文件的或 ArcSDE 地理數(shù)據(jù)庫數(shù)據(jù)源中,以下表達(dá)式將從美國州名稱中選擇 Mississippi 和 Missouri:

STATE_NAME LIKE 'Miss%'

百分號 (%) 表示這個(gè)位置可以是任意字符,即 1 個(gè)字符、100 個(gè)字符或者無字符均可。在查詢個(gè)人地理數(shù)據(jù)庫時(shí),使用通配符“*”代表任意數(shù)量的字符,而使用“?”來代表一個(gè)字符。

字符串函數(shù)可用來格式化字符串。例如,LEFT 函數(shù)將返回字符串左側(cè)特定數(shù)量的字符。在以下示例中,查詢將返回以字母 A 開頭的所有州:

LEFT(STATE_NAME,1) = 'A'

有關(guān)支持的函數(shù)列表,請參閱 DBMS 文檔。

數(shù)值

無論您的區(qū)域設(shè)置如何,小數(shù)點(diǎn) (.) 將始終用作小數(shù)分隔符。在表達(dá)式中不能使用逗號作為小數(shù)分隔符或千位分隔符。

可以使用等于 (=)、不等于 (<>)、大于 (>)、小于 (=) 和小于等于 (<=) 和 BETWEEN 運(yùn)算符查詢數(shù)值。例如:

POPULATION >= 5000

數(shù)值函數(shù)可用來格式化數(shù)值。例如,ROUND 函數(shù)可將文件地理數(shù)據(jù)庫中的數(shù)值四舍五入到指定的小數(shù)位數(shù):

ROUND(SQKM,0) = 500

有關(guān)支持的數(shù)值函數(shù)列表,請參閱 DBMS 文檔。

日期和時(shí)間

基本規(guī)則

地理數(shù)據(jù)庫數(shù)據(jù)源將日期保存在日期時(shí)間字段中。但是,ArcInfo coverage 和 shapefile 不是這樣。

因此,下面所列的大部分查詢語法都包含對時(shí)間的引用。在某些情況下,當(dāng)已知字段只包含日期時(shí),查詢中的時(shí)間部分可以安全地省略掉;而在其他情況下則需要聲明,否則查詢將返回語法錯(cuò)誤。

ArcMap 日期格式的主要目的是存儲日期,不是時(shí)間。當(dāng)基礎(chǔ)數(shù)據(jù)庫實(shí)際上使用日期時(shí)間字段時(shí),可以在此字段中只存儲時(shí)間,但最好不要這樣做。查詢時(shí)間會比較麻煩;例如,12:30:05 p.m. 會被存儲為 '1899-12-30 12:30:05'。

注:

基礎(chǔ)數(shù)據(jù)庫中日期的存儲會參考 1899 年 12 月 30 日 00:00:00。這適用于此處所列出的所有數(shù)據(jù)源。

本部分內(nèi)容的目的只是幫助您查詢?nèi)掌谥?#xff0c;而非時(shí)間值。當(dāng)存儲了包含非空時(shí)間的日期(例如 1999 年 1 月 12 日 04:00:00)后,只查詢該日期將不會返回這條記錄,因?yàn)楫?dāng)向一個(gè)日期時(shí)間字段只傳遞日期時(shí),系統(tǒng)會自動用零填充時(shí)間,所以將只檢索該日期下時(shí)間為 12:00:00 a.m 的記錄。

屬性表內(nèi)會以用戶友好的格式來顯示日期和時(shí)間(取決于用戶的區(qū)域設(shè)置)而不是采用基礎(chǔ)數(shù)據(jù)庫的格式。這在大多數(shù)情況下都很適用,但也有一些缺點(diǎn):

  • SQL 查詢中顯示的字符串可能會與表中顯示的值稍有不同,尤其是當(dāng)包含時(shí)間時(shí)。例如,輸入的時(shí)間 00:00:15 將在屬性表中(當(dāng)您的區(qū)域設(shè)置為美國時(shí))顯示為 12:00:15 a.m.,對應(yīng)于查詢語法將是 Datefield = '1899-12-30 00:00:15'。

  • 屬性表在您保存編輯之前無法知道是何種基礎(chǔ)數(shù)據(jù)源。它首先會嘗試將輸入的值格式化為符合自己的格式,然后在保存編輯內(nèi)容時(shí),會再嘗試對生成的值進(jìn)行調(diào)整以便存入數(shù)據(jù)庫。因此,您可以在 shapefile 中輸入一個(gè)時(shí)間值,但您會發(fā)現(xiàn)當(dāng)您保存編輯內(nèi)容時(shí)該值會被丟棄。隨后該字段將包含值 '1899-12-30' 并顯示 12:00:00 a.m. 或其他等效的值(取決于您的區(qū)域設(shè)置)。

ArcSDE 地理數(shù)據(jù)庫的日期時(shí)間語法

Informix

Datefield = 'yyyy-mm-dd hh:mm:ss'

查詢的 hh:mm:ss 部分不能省略,即使等于 00:00:00 也是如此。

Oracle

Datefield = date 'yyyy-mm-dd'

請切記,這將不會返回時(shí)間不為空的記錄。

在 Oracle 中查詢?nèi)掌诘奶娲袷饺缦?#xff1a;

Datefield = TO_DATE('yyyy-mm-dd hh:mm:ss','YYYY-MM-DD HH24:MI:SS')

第二個(gè)參數(shù) 'YYYY-MM-DD HH24:MI:SS' 用于描述查詢要用的格式。實(shí)際的查詢可能類似于:

Datefield = TO_DATE('2003-01-08 14:35:00','YYYY-MM-DD HH24:MI:SS')

您可以使用精簡形式:

TO_DATE('2003-11-18','YYYY-MM-DD')

同樣,這將不會返回時(shí)間不為空的記錄。

SQL Server

Datefield = 'yyyy-mm-dd hh:mm:ss'

當(dāng)記錄中未設(shè)置時(shí)間時(shí),查詢的 hh:mm:ss 部分可以省略。

替代格式如下:

Datefield = 'mm/dd/yyyy'

IBM DB2

Datefield = TO_DATE('yyyy-mm-dd hh:mm:ss','YYYY-MM-DD HH24:MI:SS')

查詢的 hh:mm:ss 部分不能省略,即使時(shí)間等于 00:00:00 也是如此。

PostgreSQL

Datefield = TIMESTAMP 'YYYY-MM-DD HH24:MI:SS'
Datefield = TIMESTAMP 'YYYY-MM-DD'

使用“等于”查詢時(shí)必須指定完整的時(shí)間戳,否則將不會返回任何記錄。如果查詢的表中包含這些確切的時(shí)間戳(2007-05-29 00:00:00 或 2007-05-29 12:14:25)時(shí),您可以用下列語句成功進(jìn)行查詢:

select * from table where date = '2007-05-29 00:00:00';

或者

select * from table where date = '2007-05-29 12:14:25';

如果使用其他運(yùn)算符(如大于、小于、大于等于或小于等于),您不必指定時(shí)間,不過如果您希望更精確些也可以指定。以下兩個(gè)語句都可以使用:

select * from table where date < '2007-05-29';select * from table where date < '2007-05-29 12:14:25';

文件地理數(shù)據(jù)庫、shapefile、coverage 和其他基于文件的數(shù)據(jù)源

文件地理數(shù)據(jù)庫、shapefile 和 coverage 中的日期前面要加上 date。

"Datefield" = date 'yyyy-mm-dd'

文件地理數(shù)據(jù)庫支持在日期字段中使用時(shí)間,因此可將此加入到表達(dá)式中:

"Datefield" = date 'yyyy-mm-dd hh:mm:ss'

Shapefile 和 coverage 不支持在日期字段中使用時(shí)間。

注:

文件地理數(shù)據(jù)庫所用的所有 SQL 均基于 SQL-92 標(biāo)準(zhǔn)。

個(gè)人地理數(shù)據(jù)庫

個(gè)人地理數(shù)據(jù)庫中的日期使用井號 (#) 來分隔。

例如:

[Datefield] = #mm-dd-yyyy hh:mm:ss#

可以將其精簡為 [Datefield] = #mm-dd-yyyy#。

替代格式

[Datefield] = #yyyy/mm/dd#

已知局限性

對連接的左側(cè)部分(第一張表)的日期查詢只適用于基于文件的數(shù)據(jù)源,如文件地理數(shù)據(jù)庫、shapefile 和 DBF 表。不過,對于非基于文件的數(shù)據(jù),如個(gè)人地理數(shù)據(jù)庫數(shù)據(jù)和 ArcSDE 數(shù)據(jù)也有解決方法,如下文所述。

當(dāng)使用為基于文件的數(shù)據(jù)源所開發(fā)的受限的 SQL 版本時(shí),對連接的左側(cè)部分的日期查詢將獲得成功。如果您沒有使用此類數(shù)據(jù)源,可以強(qiáng)制表達(dá)式使用這種格式。您可以通過確保查詢表達(dá)式涉及一個(gè)以上連接表的字段來實(shí)現(xiàn)此操作。例如,如果一個(gè)要素類和一張表(FC1 和 Table1)進(jìn)行連接且均來自于某一個(gè)人地理數(shù)據(jù)庫,則下列表達(dá)式將失敗或不返回任何數(shù)據(jù):

FC1.date = date #01/12/2001#
FC1.date = date '01/12/2001'

要想查詢成功,您可以創(chuàng)建如下查詢:

FC1.date = date '01/12/2001' and Table1.OBJECTID > 0

由于此查詢涉及到兩個(gè)表的字段,因此將使用受限的 SQL 版本。在此表達(dá)式中,連接創(chuàng)建期間匹配記錄的 Table1.OBJECTID 始終 > 0,因此對于包含連接匹配項(xiàng)的所有行來說此表達(dá)式均為 true。

要確保選擇 FC1.date = date '01/12/2001' 的每條記錄,可使用下列查詢:

FC1.date = date '01/12/2001' and (Table1.OBJECTID IS NOT NULL OR Table1.OBJECTID IS NULL)

此查詢將選擇 FC1.date = date '01/12/2001' 的所有記錄,而無論每條記錄是否是連接匹配項(xiàng)。

子查詢

注:

Coverage、shapefile 和其他基于非地理數(shù)據(jù)庫文件的數(shù)據(jù)源不支持子查詢。在版本化 ArcSDE 要素類和表上執(zhí)行的子查詢不會返回增量表中存儲的要素。文件地理數(shù)據(jù)庫對本部分所述的子查詢提供了有限的支持,而個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫則提供完全支持。有關(guān)個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫中全套子查詢功能方面的詳細(xì)信息,請參閱您的 DBMS 文檔。

子查詢是指嵌套在另一個(gè)查詢中的查詢。子查詢可用于應(yīng)用謂詞或聚合函數(shù),或?qū)?shù)據(jù)與存儲在另一張表中的值進(jìn)行比較。可使用 IN 或 ANY 關(guān)鍵字來完成。例如,以下查詢只會選擇未列在表 indep_countries 中的國家:

"COUNTRY_NAME" NOT IN (SELECT "COUNTRY_NAME" FROM indep_countries)

此查詢將返回國家中 GDP2006 大于 GDP2005 的所有要素:

"GDP2006" > (SELECT MAX("GDP2005") FROM countries)

對于表中的每條記錄,子查詢可能需要在其目標(biāo)表中分析所有數(shù)據(jù)。在大型數(shù)據(jù)集上執(zhí)行時(shí)可能極其緩慢。

文件地理數(shù)據(jù)庫僅提供對以下子查詢的支持:

  • IN 謂詞。例如:

    "COUNTRY_NAME" NOT IN (SELECT "COUNTRY_NAME" FROM indep_countries)
  • 包含比較運(yùn)算符的標(biāo)量子查詢。標(biāo)量子查詢返回單個(gè)值。例如:

    "GDP2006" > (SELECT MAX("GDP2005") FROM countries)

    對于文件地理數(shù)據(jù)庫,集合函數(shù) AVG、COUNT、MIN、MAX 和 SUM 只能用在標(biāo)量子查詢內(nèi)。

  • EXISTS 謂詞。例如:

    EXISTS (SELECT * FROM indep_countries WHERE "COUNTRY_NAME" = 'Mexico')

運(yùn)算符

以下是文件地理數(shù)據(jù)庫、shapefile、coverage 和其他基于文件的數(shù)據(jù)源所支持的查詢運(yùn)算符的完整列表。個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫也支持這些運(yùn)算符,但這些數(shù)據(jù)源可能使用不同的語法。除了以下這些運(yùn)算符外,個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫還支持一些其他功能。有關(guān)詳細(xì)信息,請參閱 DBMS 文檔。

算術(shù)運(yùn)算符

算術(shù)運(yùn)算符用于對數(shù)值進(jìn)行加、減、乘、除的運(yùn)算。

算術(shù)運(yùn)算符

運(yùn)算符

描述

*

乘法算術(shù)運(yùn)算符

/

除法算術(shù)運(yùn)算符

+

加法算術(shù)運(yùn)算符

-

減法算術(shù)運(yùn)算符

比較運(yùn)算符

使用比較運(yùn)算符可以將兩個(gè)表達(dá)式進(jìn)行比較。

比較運(yùn)算符

運(yùn)算符

描述

<

小于。適用于字符串(基于字母順序進(jìn)行比較)、數(shù)值和日期。

<=

小于或等于。適用于字符串(基于字母順序進(jìn)行比較)、數(shù)值和日期。

<>

不等于。適用于字符串(基于字母順序進(jìn)行比較)、數(shù)值和日期。

>

大于。適用于字符串(基于字母順序進(jìn)行比較)、數(shù)值和日期。

>=

大于或等于。適用于字符串(基于字母順序進(jìn)行比較)、數(shù)值和日期。例如,以下查詢將選擇名稱的開頭字母是 M 到 Z 的所有城市:

"CITY_NAME" >= 'M'

[NOT] BETWEEN x AND y

選擇值大于等于 x 且小于等于 y 的記錄。當(dāng)前面有 NOT 時(shí),將選擇值在指定范圍之外的記錄。例如,以下表達(dá)式將選擇值大于等于 1 且小于等于 10 的所有記錄:

"OBJECTID" BETWEEN 1 AND 10這與以下表達(dá)式等效:"OBJECTID" >= 1 AND OBJECTID <= 10但是,在查詢具有索引的字段時(shí)使用包含 BETWEEN 的表達(dá)式效率會更高。

[NOT] EXISTS

如果子查詢返回至少一條記錄則返回 TRUE;否則返回 FALSE。例如,如果 OBJECTID 字段包含一個(gè)值 50,則以下查詢將返回 TRUE:

EXISTS (SELECT * FROM parcels WHERE "OBJECTID" = 50)只有文件地理數(shù)據(jù)庫、個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫支持 EXISTS。

[NOT] IN

如果記錄的某個(gè)字段包含多個(gè)字符串或值的其中一個(gè),那么選擇這條記錄。當(dāng)表達(dá)式前面包含 NOT 時(shí),如果記錄的某個(gè)字段不包含多個(gè)字符串或值的任何一個(gè),那么將選擇這條記錄。例如,以下表達(dá)式將搜索四個(gè)不同的州名稱:

"STATE_NAME" IN ('Alabama', 'Alaska', 'California', 'Florida')對于文件地理數(shù)據(jù)庫、個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫,此運(yùn)算符還可用于子查詢:"STATE_NAME" IN (SELECT "STATE_NAME" FROM states WHERE "POP" > 5000000)

IS [NOT] NULL

選擇指定字段為空值的記錄。如果 NULL 前面有 NOT,則將選擇指定字段中包含任意值的記錄。例如,以下表達(dá)式將選擇 POPULATION 中包含空值的所有記錄:

"POPULATION" IS NULL

x [NOT] LIKE y [ESCAPE '轉(zhuǎn)義字符']

將 LIKE 運(yùn)算符(不是 = 運(yùn)算符)與通配符結(jié)合使用可以構(gòu)建對部分字符串的搜索。例如,以下表達(dá)式將從美國州名中選擇 Mississippi 和 Missouri:

"STATE_NAME" LIKE 'Miss%'百分號 (%) 表示該處可以是任意數(shù)量的任何字符:一個(gè)字符、一百個(gè)字符或無字符。此外,如果您希望在查詢時(shí)通配符僅代表一個(gè)字符,可使用下劃線 (_)。例如,以下表達(dá)式將找到 Catherine Smith 和 Katherine Smith:"OWNER_NAME" LIKE '_atherine Smith'百分號和下劃線通配符適用于任何基于文件的數(shù)據(jù)或多用戶地理數(shù)據(jù)庫數(shù)據(jù)。LIKE 表達(dá)式的兩側(cè)都要有字符數(shù)據(jù)。如果需要訪問非字符數(shù)據(jù),請使用 CAST 函數(shù)。例如,以下查詢將返回整數(shù)字段 SCORE_INT 中以 8 開頭的數(shù)值:CAST ("SCORE_INT" AS VARCHAR) LIKE '8%'要在搜索字符串中包含百分號或下劃線,請使用 ESCAPE 關(guān)鍵字來將另一種字符指定為轉(zhuǎn)義字符,該字符表示緊接其后的是真正的百分號或下劃線。例如,以下表達(dá)式將返回任何包含 10% 的任何字符串,例如 10% DISCOUNT 或 A10%:"AMOUNT" LIKE '%10$%%' ESCAPE '$'在查詢個(gè)人地理數(shù)據(jù)庫時(shí),使用通配符“*”代表任意數(shù)量的字符,而使用“?”來代表一個(gè)字符。還可以使用井號 (#) 通配符來表示匹配單個(gè)數(shù)字(數(shù)值型值)。例如,以下查詢將從個(gè)人地理數(shù)據(jù)庫返回宗地編號 A1、A2 等等:[PARCEL_NUMBER] LIKE 'A#'

邏輯運(yùn)算符

邏輯運(yùn)算符

運(yùn)算符

描述

AND

結(jié)合兩個(gè)條件,如果兩個(gè)條件都為 true 則選擇該記錄。例如,以下表達(dá)式將選擇面積大于 1,500 平方英尺且有一個(gè)能容納 2 臺以上汽車的車庫的所有房屋:

"AREA" > 1500 AND "GARAGE" > 2

OR

結(jié)合兩個(gè)條件,如果兩個(gè)條件中至少有一個(gè)為 true 則選擇該記錄。例如,以下表達(dá)式將選擇面積大于 1,500 平方英尺或有一個(gè)能容納 2 臺以上汽車的車庫的所有房屋:

"AREA" > 1500 OR "GARAGE" > 2

NOT

選擇與表達(dá)式不匹配的記錄。例如,以下表達(dá)式將選擇除 California 之外的所有州:

NOT "STATE_NAME" = 'California'

字符串運(yùn)算符

字符串運(yùn)算符

運(yùn)算符

描述

||

同時(shí)返回連接兩個(gè)或多個(gè)字符串表達(dá)式后得到的字符串。

FIRST_NAME || MIDDLE_NAME || LAST_NAME

函數(shù)

以下是文件地理數(shù)據(jù)庫、shapefile、coverage 和其他基于文件的數(shù)據(jù)源所支持的函數(shù)的完整列表。個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫也支持這些函數(shù),但這些數(shù)據(jù)源可能使用不同的語法或函數(shù)名。除了以下這些函數(shù)外,個(gè)人地理數(shù)據(jù)庫和 ArcSDE 地理數(shù)據(jù)庫還支持一些其他功能。有關(guān)詳細(xì)信息,請參閱 DBMS 文檔。

日期函數(shù)

日期函數(shù)

功能

描述

CURRENT_DATE

返回當(dāng)前日期。

EXTRACT(extract_field FROM extract_source)

返回 extract_source 的 extract_field 部分。extract_source 參數(shù)是一個(gè)日期時(shí)間表達(dá)式。extract_field 參數(shù)可以是下列任一關(guān)鍵字:YEAR、MONTH、DAY、HOUR、MINUTE 或 SECOND。

CURRENT TIME

返回當(dāng)前時(shí)間。

字符串函數(shù)

以 string_exp 表示的參數(shù)可以是列名、字符串文本或者另一個(gè)標(biāo)量函數(shù)的結(jié)果,其基礎(chǔ)數(shù)據(jù)類型可表示為字符型。

以 character_exp 表示的參數(shù)是長度可變的字符型字符串。

以 start 或 length 表示的參數(shù)可以是數(shù)值文本或者另一個(gè)標(biāo)量函數(shù)的結(jié)果,其基礎(chǔ)數(shù)據(jù)類型可表示為數(shù)值型。

這些字符串函數(shù)以 1 為基礎(chǔ);即字符串的第一個(gè)字符為字符 1。

字符串函數(shù)

功能

描述

CHAR_LENGTH(string_exp)

返回字符串表達(dá)式的字符長度。

LOWER(string_exp)

返回一個(gè)與 string_exp 相等的字符串,其中所有大寫字符均會轉(zhuǎn)換為小寫字符。

POSITION(character_exp IN character_exp)

返回第一個(gè)字符表達(dá)式在第二個(gè)字符表達(dá)式中的位置。結(jié)果是一個(gè)確切的數(shù)值,采用預(yù)先定義的精度且小數(shù)位數(shù)為零。

SUBSTRING(string_exp FROM start FOR length)

返回一個(gè)從 string_exp 衍生而來的字符串,其起始字符位置由 start 指定,字符數(shù)由 length 指定。

TRIM(BOTH | LEADING | TRAILING trim_character FROM string_exp)

返回字符串的開頭、末尾或兩端移除 trim_character 后所得的 string_exp。

UPPER(string_exp)

返回一個(gè)與 string_exp 相等的字符串,其中所有小寫字符均會轉(zhuǎn)換為大寫字符。

數(shù)值函數(shù)

所有數(shù)值函數(shù)均返回?cái)?shù)值型值。

以 numeric_exp、float_exp 或 integer_exp 表示的參數(shù)可以是列名、另一個(gè)標(biāo)量函數(shù)的結(jié)果或數(shù)值文本,其基礎(chǔ)數(shù)據(jù)類型可表示為數(shù)值型。

數(shù)值函數(shù)

功能

描述

ABS(numeric_exp)

返回 numeric_exp 的絕對值。

ACOS(float_exp)

返回作為角度的 float_exp 的反余弦值,用弧度表示。

ASIN(float_exp)

返回作為角度的 float_exp 的反正弦值,用弧度表示。

ATAN(float_exp)

返回作為角度的 float_exp 的反正切值,用弧度表示。

CEILING(numeric_exp)

返回大于或等于 numeric_exp 的最小整數(shù)。

COS(float_exp)

返回 float_exp 的余弦值,其中 float_exp 是以弧度表示的角度。

FLOOR(numeric_exp)

返回小于或等于 numeric_exp 的最大整數(shù)。

LOG(float_exp)

返回 float_exp 的自然對數(shù)。

LOG10(float_exp)

返回 float_exp 的以 10 為底的對數(shù)。

MOD(integer_exp1, integer_exp2)

返回 integer_exp1 除以 integer_exp2 所得的余數(shù)。

POWER(numeric_exp, integer_exp)

返回 numeric_exp 的 integer_exp 次冪的值。

ROUND(numeric_exp, integer_exp)

返回四舍五入至小數(shù)點(diǎn)右側(cè)第 integer_exp 位的 numeric_exp。如果 integer_exp 為負(fù)數(shù),則 numeric_exp 將被四舍五入至小數(shù)點(diǎn)左側(cè)第 |integer_exp| 位。

SIGN(numeric_exp)

返回 numeric_exp 正負(fù)號的標(biāo)志。如果 numeric_exp 小于零,則返回 -1。如果 numeric_exp 等于零,則返回 0。如果 numeric_exp 大于零,則返回 1。

SIN(float_exp)

返回 float_exp 的正弦值,其中 float_exp 是以弧度表示的角度。

TAN(float_exp)

返回 float_exp 的正切值,其中 float_exp 是以弧度表示的角度。

TRUNCATE(numeric_exp, integer_exp)

返回截?cái)嘀列?shù)點(diǎn)右側(cè)第 integer_exp 位的 numeric_exp。如果 integer_exp 為負(fù)數(shù),則 numeric_exp 將被截?cái)嘀列?shù)點(diǎn)左側(cè)第 |integer_exp| 位。

CAST 函數(shù)

CAST 函數(shù)可將值轉(zhuǎn)換為指定的數(shù)據(jù)類型。語法如下:

CAST(exp AS data_type)

exp 參數(shù)可以是列名、另一個(gè)標(biāo)量函數(shù)的結(jié)果或是一個(gè)文本。Data_type 可以是下列任意關(guān)鍵字,可以用大寫或小寫形式指定:CHAR、VARCHAR、INTEGER、SMALLINT、REAL、DOUBLE、DATE、TIME、DATETIME、NUMERIC 或 DECIMAL。

有關(guān) CAST 函數(shù)的詳細(xì)信息,請參閱 CAST 和 CONVERT。?

總結(jié)

以上是生活随笔為你收集整理的oracle使用关键字做表字段名_ArcGIS SQL使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。