Oracle 的 SQL 语法真是又全又强,尤其在做数据查询的时候,能省不少事。
最基本的查询用法,比如SELECT * FROM tableA
,能一口气拉出整张表,简单粗暴。你要是只想看某几列,就像SELECT name, id FROM tableA
这样挑着查,也挺方便的。
过滤数据就靠WHERE
子句。像AND
、OR
这类逻辑符用得最多,常见写法有:
SELECT * FROM tableA WHERE a.id = 'a' AND a.name = 'aa';
SELECT * FROM tableA WHERE a.id = 'a' OR a.name = 'aa';
模糊查也好用,用LIKE '%a%'
找出名字里带“a”的,配上通配符灵活得。
还有IN
的写法,适合批量找,比如SELECT * FROM tableA WHERE a.name IN ('1', '2', '3')
。比一个个OR
写清爽多了。
空值判断也要注意,得用IS NULL
或IS NOT NULL
。直接用= NULL
是不行的,容易出错。
范围查询一般是写成age >= 20 AND age < 100>这样,挺直观。顺便提一句,
!=
或<>
都能表示“不等于”。
如果你已经熟练掌握了基本查询,接下来可以看看多表联查、子查询和窗口函数这些进阶玩法,网上也有蛮多教程可参考,像这篇讲得就挺详细的:
如果你平时经常和 Oracle 打交道,这些用法熟练掌握后,不管是写报表、查异常,还是做接口返回调试,效率都能提一截。