本來我需要查詢
select * from demo where status=1;
杯具的是,我想要的結果沒有出來,找了一下問題的原因
我資料庫中status欄位的型別為enum,不是數字型別的原因?
select * from demo where status=『1』;
這樣就可以了,我一直以為是一樣的呢,以為mysql自動會轉換型別,看來以為是不行的...
//終於明白為什麼了,上面的想法是錯誤的....
原來如果字段型別為enum的話,status=1
不加引號查詢的是索引的值,****,我以前怎麼就不知道呢?哈哈
舉個例子:enum裡面放著0,1,下面就是索引所對應的字段(可能這樣叫不合適?),當讓如果加上單引號就是正常的值的匹配了
對應的字段
索引
null
null
""
0"0"
1"1"
2
mysql多表查詢where
有3張表,學生 科目 和成績表。student,result subject.當使用where條件過濾時,會過濾掉找到記錄中滿足條件的記錄,而對於左連線也是適用的。如下圖 對於where過濾條件,此針對的是查詢出來的總的記錄,而不會因是left join而不過濾 select s.id,s.name...
連線查詢時的where與and
這裡有兩條sql語句 1.select e.employeeid,e.employeename,d.departmentname from employee e left join department d on e.departmentid d.departmentid and e.employe...
關於where的條件查詢in
表示式查詢 map 欄位1 array 表示式 查詢條件1 map 欄位2 array 表示式 查詢條件2 model where map select 也支援 表示式不分大小寫,支援的查詢表示式有下面幾種,分別表示的含義是 表示式含義 eq等於 neq不等於 gt大於 egt大於等於 lt小於 e...