What is wrong with this query?
select*from"EMP"where'SCOTT'="ENAME"and"DEPTNO"=20;
EMPNO ENAME JOB MGR HIREDATE
---------- ---------- --------- ---------- ---------
7788 SCOTT ANALYST 7566 13-JUL-87
It is a zero-space query 😎
You could write it as
select
*
from
"EMP"
where
'SCOTT'="ENAME"
and
"DEPTNO"=20;
personnaly, I would write it as
select *
from emp
where ename='SCOTT'
and deptno=20;
Formatting is very important, it makes your code nice to read and indentation make the blocks visualable.
Auto-formatting is also fine, but I like to decide myself if the line is too long, or if I want to have FROM and EMP on the same line.
Have a look at the free online SQL Formatter SQLinForm
Hi Laurent
Nice post, but , who will write SQL of that way? a lot letters and spaces…
I believe that no…
Thank you again Laurent by yours nice and accurate post
Regards
Hector Gabriel Ulloa Ligarius
http://ligarius.wordpress.com
Not nearly as obfuscated as C code can get, I must say; when I read it initially I was unable to see what was “wrong” with the statement, thinking it was just a html formatting problem…
I find auto-formatting better than hand-formatting because it maintains
…consistency across the application.
🙂
Nice Link.
But it doesnt tell anything about the syntax errors. The one by orafaq http://orafaq.com/cgi-bin/sqlformat/pp/utilities/sqlformatter.tpl points out even syntax errors, if any.
Sidhu
well, it points out syntax error, but for which version? there are plenty of valid queries that are unaccepted because of advanced syntaxes like KEEP, VERSION, MODEL, PARTITION, IS A SET, etc…
No no, nothing that complex…I just typed some stupid text where orafaq formatter gave the syntax error but this one doesn’t like
select * from emp where select * from dept
Sidhu
Pingback: Sven’s Technik-Blog » Blog Archive » Code formatieren (SQL, PL/SQL)
On SQLPlus, I sometimes use
select*from session_privs;
select*from session_roles;
We can omit Space 2 times 😎
These are a little useful 😉
it is a bit like in DOS
cd\
select ename,deptno,sal from emp e
where 2>(select count(m.sal) from emp m where e.deptno=m.deptno and e.sal<m.sal
please
how can it execute the process kindly tell the answers…
check the parantheses