日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

SQL語法指南

統一服務在支持ANSI SQL標準語法的DML(data manipulation language)基礎上,針對API開發過程中SQL語法使用的具體需求,定義了自己的擴展,以支持參數聲明、動態SQL、范圍參數生成等用法。本文為您介紹SQL語法指南。

使用限制

  • 僅支持SELECT操作。

  • 不支持事務功能。

  • 表名和列名默認情況下不區分大小寫。

基本語法

[ WITH with_subquery [, ...] ]
SELECT
[ [ ALL | DISTINCT ] | select_expr [ AS output_name ] [, ...] ] 
[ FROM table_reference [, ...] ]
[ WHERE condition ]
[ GROUP BY expression [, ...] ]
[ HAVING condition ]
[ { UNION | ALL | INTERSECT | EXCEPT | MINUS } query ]
[ ORDER BY expression
[ ASC | DESC ]
[ LIMIT { number | ALL } ]

SQL模式API支持基本語法及操作范圍如上所示,不同數據源上可以使用語法不盡相同,具體以目標數據源的SQL語法說明為準。

參數聲明

基礎SQL語法之上,統一服務支持以 ${<參數名>,<類型>,<默認值>} 三元符的方式進行各類調用時參數的聲明。

示例:使用SQL語句定義一個聲明了數值型參數“uid”和字符串數組參數“unArr”的API,且參數“uid”設置默認值為“1”。

SELECT name, addr, tel
FROM table_name
WHERE user_id = ${uid,Number,1} 
and user_name in ${unArr,Array,a,b};

已支持的參數類型

類型

說明

對應數據庫類型

默認值設置(非必須)

示例

Number

數值

int、Integer、Double、BigInt等

單值

${uid,Number,1}

String

字符串

Char、Varchar、Text、String等

單值,不需要引號

${tel,String,177723_test}

Array

字符串數組

Char、Varchar、Text、String等

多值用逗號分隔

${names,Array,a,b}

Array_Num

數值數組

int、Integer、Double、BigInt等

多值用逗號分隔

${uids,Array_Num,1,2,3}

date

日期類型,需要調用方自行保證日期格式

Date、DateTime,TimeStamp等

單值,不需要引號

${date,Date,2022-12-30 12:00:00}

動態SQL

統一服務通過內置自定義函數NotRequired(),實現了對于動態SQL特性的支持,以實現非必選參數的設置,使用方式為NotRequired(<字段> <操作符> ${<參數名>,<類型>,<默認值}>)。

示例:定義一個聲明了數值型參數“uid”和字符串數組可選參數“unArr”的API,且參數“uid”設置默認值為“1”,當請求參數中未傳入“unArr”參數時,則SQL語句中條件“user_name in ${unArr,Array,}”不生效。

SELECT name, addr, tel
FROM table_name
WHERE user_id = ${uid,Number,1} 
and NotRequired(user_name in ${unArr,Array,});