1.查詢每個班級的前三名
drop table if exists `sc`;result:create table `sc` (
`id`
int(11
) not null auto_increment,
`name` varchar(
200) character set utf8 default null,
`class` varchar(200
) character set utf8 default null,
`score`
int(11
) default null,
primary key (`id`)
) engine=innodb auto_increment=9 default charset=latin1;
insert into sc values (
1,'badkano
','一年一班
',100
);insert into sc values (
2,'','
一年一班
',99
);insert into sc values (
3,'du小短
','一年一班
',95
);insert into sc values (
4,'du小小動
','一年一班
',97
);insert into sc values (
5,'du小智
','一年一班
',80
);insert into sc values (
6,'呂布
','一年二班
',67
);insert into sc values (
7,'趙雲
','一年二班
',90
);insert into sc values (
8,'典韋
','一年二班
',89
);insert into sc values (
9,'關羽
','一年二班
',70
);insert into sc values (
10,'
馬超','
一年二班
',98);
selectselect ** from
sc t
where
(select count(1)+1
from sc where
class=t.class and score>t.score)
<= 3
from sc a
where 3 > (
select count( * )
from sc
where class = a.class
and score > a.score )
order by a.class , a.score desc
2.關於null的查詢
查詢:
select * from t_category where description<>'325'
select * from t_category where description='這兩條查詢都只有一條記錄,並沒有查詢出為null的記錄325'
select sum(user_id) as ids from t_category where description='結果不是為0,是nullaaaaa
'
3.mysql中逗號字串與數字比較
select結果莫名其妙,除了點號以外,其他符號間隔的第乙個符號與數字匹配就為true,看不懂,以後遇到要注意。5=5; -- true
select cast(5
aschar(20))=5; -- true
select cast(55
aschar(20))=5; -- false
select cast('
5,2'
aschar(20))=5; -- true
select
'5,2,4
'=5; -- true
select
5='5,4
'; -- true
select
5='5^4
'; -- true
select
5='5|4
'; -- true
select
5='5.4
'; -- false
4.mysql中find_in_set使用
select find_in_set('mysql字串函式 find_in_set(str1,str2)函式是返回str2中str1所在的位置索引,str2必須以","分割開。b','
a,b,c,d,e,f
'); -- 2
select find_in_set('
d','
a,b,c,d,e,f
'); -- 4
like是廣泛的模糊匹配,字串中沒有分隔符,find_in_set 是精確匹配,字段值以英文」,」分隔,find_in_set查詢的結果要小於like查詢的結果。
Apache Shiro相關問題收集
filter配置,使用spring org.springframework.web.filter.delegatingfilterproxy 被 的filter配置在xml檔案裡,由spring容器管理維護 securityutils.getsubject獲取subject,然後呼叫login方法登...
MySql 問題收集
關鍵字 mysql 遠端連線 1.修改mysql配置檔案 etc mysql my.cnf 注釋以下行 bind address 127.0.0.1 2 建立遠端登陸使用者並授權 grant all privileges on discuz.to ted 123.123.123.123 identi...
MySQL相關問題
1 mysql不能完全解除安裝 自登錄檔中,按f3開啟搜尋項清除mysql專案。hkuser machine control con0001 2 不能儲存和顯示中文 第一種情況,mysql的character set設定為utf8,中文不能儲存 在mysql中輸入命令 show variables ...