![]() |
||
|
Golden Member
![]() ![]() ![]() ![]() 加入日期: Jun 2004
文章: 3,979
|
請教mysql的問題?
mysql>select NOT(1+1);
->0 MYSQL>select ! 1+1; ->1 mysql>select 6 > '54abc'; ->0 mysql>select 6 > 'abc54'; ->1 這是看起來很簡單的問題 不過我沒學過mysql看不大懂 有沒有人可解釋一下的? |
|||||||
|
|
|
Major Member
![]() 加入日期: Feb 2004 您的住址: Terran Empire
文章: 283
|
引用:
NOT (1+1) -> NOT 2 -> 0 改成 select NOT 1+1; 結果也是 0,因為NOT 運算優先序比 + 低。 引用:
! 運算優先序比 + 高。 !1+1 -> (!1)+1 -> 0+1 -> 1 引用:
因為6和'54ab'資料類型不同,會先轉換成數字再比較。 6>'54abc' -> 6>54 -> 0 引用:
因為6和'abc54'資料類型不同,會先轉換成數字再比較。 6>'abc54' -> 6>0 -> 0 此文章於 2006-07-09 03:19 AM 被 kec 編輯. |
||||||
|
|
|
Major Member
![]() 加入日期: Feb 2004 您的住址: Terran Empire
文章: 283
|
引用:
打錯了,看到時已經來不及改了。 6>'abc54' -> 6>0 -> 1 才對。 |
|
|
|
|
Golden Member
![]() ![]() ![]() ![]() 加入日期: Jun 2004
文章: 3,979
|
大概有點懂了 謝謝kec詳細的解答
|
|
|
|
Golden Member
![]() ![]() ![]() ![]() 加入日期: Jun 2004
文章: 3,979
|
這裡面not的意思 可否請kec再解釋一下? 好久沒碰程式設計了 都忘光光了
|
|
|
|
Major Member
![]() 加入日期: Feb 2004 您的住址: Terran Empire
文章: 283
|
在MySQL中,NOT 和 ! 都是邏輯的否定(非)運算,但它們的運算優先序不同。
MySQL處理邏輯運算時以 0 為偽;非零數值為真。運算結果為偽傳回0;運算結果為真則傳回1。 |
|
|
|
Golden Member
![]() ![]() ![]() ![]() 加入日期: Jun 2004
文章: 3,979
|
謝謝kec的指教 學習mysql我是要一個一個函數看完嗎? 還是怎麼學習才快? 還是說看實例遇到問題再來看mysql手冊會較好呢?
|
|
|