UPDATE bookshelf SET author='Margaret Mitchell'WHERE book_name ='飘';COMMIT;
删除《从你的全世界路过》:
DELETEFROM bookshelf WHERE book_name ='从你的全世界路过';COMMIT;
通过上面的几个栗子🌰,应该能很好的理解 WHERE 查询条件的使用了。
☀️ 趣味 SQL
文末,赠送给各位看官几个一句SQL画图的趣味小SQL:
⭐️ 五角星:
WITH a AS(SELECTDISTINCTround(SUM(x)over(ORDERBY n)) x,round(SUM(y)over(ORDERBY n)) y
FROM(SELECT n,
cos(trunc(n /20)*(1-1/5)*3.1415926)*2 x,
sin(trunc(n /20)*(1-1/5)*3.1415926) y
FROM(SELECT rownum -1 n
FROM all_objects
WHERE rownum <=20*5)))SELECTREPLACE(sys_connect_by_path(point,'/'),'/',NULL) star
FROM(SELECT b.y,
b.x,
decode(a.x,NULL,' ','*')pointFROM a,(SELECT*FROM(SELECT rownum -1+(SELECTMIN(x)FROM a) x
FROM all_objects
WHERE rownum <=(SELECTMAX(x)-MIN(x)+1FROM a)),(SELECT rownum -1+(SELECTMIN(y)FROM a) y
FROM all_objects
WHERE rownum <=(SELECTMAX(y)-MIN(y)+1FROM a))) b
WHERE a.x(+)= b.x
AND a.y(+)= b.y)WHERE x =(SELECTMAX(x)FROM a)STARTWITH x =(SELECTMIN(x)FROM a)CONNECTBY y = PRIOR y
AND x = PRIOR x +1;
📢 注意: 调整期中数字 5,你还可以输出 7 角星,9 角星!
🇨🇳 奥运五环:
WITH a AS(SELECTDISTINCTround(a.x + b.x) x,round(a.y + b.y) y
FROM(SELECT(SUM(x)over(ORDERBY n)) x,round(SUM(y)over(ORDERBY n)) y
FROM(SELECT n,
cos(n /30*3.1415926)*2 x,
sin(n /30*3.1415926) y
FROM(SELECT rownum -1 n
FROM all_objects
WHERE rownum <=30+30))) a,(SELECT n,(SUM(x)over(ORDERBY n)) x,round(SUM(y)over(ORDERBY n)) y
FROM(SELECT n,
cos(m /3*3.1415926)*2*15 x,
sin(m /3*3.1415926)*15 y
FROM(SELECTCASEWHEN rownum <=2THEN3WHEN rownum =3THEN-2ELSE-6END m,
rownum -1 n
FROM all_objects
WHERE rownum <=5))) b)SELECTREPLACE(sys_connect_by_path(point,'/'),'/',NULL) star
FROM(SELECT b.y,
b.x,
decode(a.x,NULL,' ','*')pointFROM a,(SELECT*FROM(SELECT rownum -1+(SELECTMIN(x)FROM a) x
FROM all_objects
WHERE rownum <=(SELECTMAX(x)-MIN(x)+1FROM a)),(SELECT rownum -1+(SELECTMIN(y)FROM a) y
FROM all_objects
WHERE rownum <=(SELECTMAX(y)-MIN(y)+1FROM a))) b
WHERE a.x(+)= b.x
AND a.y(+)= b.y)WHERE x =(SELECTMAX(x)FROM a)STARTWITH x =(SELECTMIN(x)FROM a)CONNECTBY y = PRIOR y
AND x = PRIOR x +1;
📅 打印当月日历:
SELECTMAX(decode(dow,1,
d,NULL)) sun,MAX(decode(dow,2,
d,NULL)) mon,MAX(decode(dow,3,
d,NULL)) tue,MAX(decode(dow,4,
d,NULL)) wed,MAX(decode(dow,5,
d,NULL)) thu,MAX(decode(dow,6,
d,NULL)) fri,MAX(decode(dow,7,
d,NULL)) sat
FROM(SELECT rownum d,
rownum -2+ to_number(to_char(trunc(SYSDATE,'MM'),'D')) p,
to_char(trunc(SYSDATE,'MM')-1+ rownum,'D') dow
FROM all_objects
WHERE rownum <=
to_number(to_char(last_day(to_date(SYSDATE)),'DD')))GROUPBY trunc(p /7)ORDERBY sun NULLS FIRST;