SQL - SELECT

SQL - SELECT

  • 如果一个数学表达式中包含一个空值,那么该数学表达式的结果为空值。

基本查询

select t1.col1 + 1 from t1;        -- 可以直接在(数值)字段上使用运算符。
SELECT t1.col1 + 1 AS res FROM t1; -- 使用AS关键字设置别名,如果别名中有特殊字符,需要使用双引号。
select distinct col1 from t1;      -- 使用distinct来消除重复的行。

验证查询语句

SELECT 1 FROM dual;                             -- Oracle 独有的 dual 表。
SELECT 1;                                       -- PostgreSQL
SELECT 1 FROM INFORMATION_SCHEMA.SYSTEM_USERS;  -- hsqldb
SELECT 1 FROM sysibm.sysdummy1                  -- DB2
SELECT 1                                        -- MySql
SELECT 1                                        -- Microsoft SQL Server
SELECT 1                                        -- ingres
SELECT 1                                        -- H2
values 1                                        -- derby
SELECT 1 FROM rdb$database                      -- Firebird

LIMIT 使用 case when 表达式

select
case
when age < 18 then 'A'
when age >= 18 and age < 25 then 'B'
when age >= 25 and age < 36 then 'C'
when age >= 36 and age < 50 then 'D'
when age >= 50 then 'E'
end area,
count(*) count
from
(select round((CURRENT_DATE - birthday)/365) as age from contact) as birthday
group by area;

拼接字段或者字符

SELECT country.c_name || country.e_name FROM public.country;
SELECT country.c_name || ' - 国家' FROM public.country;
SELECT concat(country.c_name, ' - 国家') FROM public.country;

猜你喜欢

转载自www.cnblogs.com/duchaoqun/p/11968772.html