Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

เปลี่ยนค่าจาก 1 เป็น Y ใน MySQL Select Statement?


คุณสามารถใช้ IF() จาก MySQL เพื่อเปลี่ยนค่าจาก 1 เป็น Y ได้ ไวยากรณ์มีดังนี้:

เลือก IF(yourColumnName,'Y',yourColumnName) เป็น anyVariableName FROM yourTableName;

เพื่อให้เข้าใจไวยากรณ์ข้างต้น ให้เราสร้างตาราง แบบสอบถามเพื่อสร้างตารางมีดังนี้:

mysql> สร้างตาราง changeValuefrom1toY -> ( -> Id int ไม่ใช่ NULL AUTO_INCREMENT, -> isValidAddress tinyint(1), -> PRIMARY KEY(Id) -> ); แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.76 วินาที) 

ตอนนี้คุณสามารถแทรกบางระเบียนในตารางโดยใช้คำสั่งแทรก แบบสอบถามมีดังนี้:

mysql> แทรกลงในค่า changeValuefrom1toY(isValidAddress)(1);Query OK, 1 แถวได้รับผลกระทบ (0.22 วินาที)mysql> แทรกลงในค่า changeValuefrom1toY(isValidAddress)(0);Query OK, 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า changeValuefrom1toY(isValidAddress) ค่า(1);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.19 วินาที)mysql> แทรกลงในค่า changeValuefrom1toY(isValidAddress) (1); แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.15 วินาที) mysql> แทรกลงใน changeValuefrom1toY (isValidAddress) ค่า(1);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.16 วินาที)mysql> แทรกลงในค่า changeValuefrom1toY(isValidAddress)(0);แบบสอบถามตกลง 1 แถวได้รับผลกระทบ (0.12 วินาที)mysql> แทรกลงในค่า changeValuefrom1toY(isValidAddress) (1); ตกลง 1 แถวได้รับผลกระทบ (0.49 วินาที)

แสดงระเบียนทั้งหมดจากตารางโดยใช้คำสั่ง select แบบสอบถามมีดังนี้:

mysql> เลือก *จาก changeValuefrom1toY;

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---+----------------+| รหัส | isValidAddress |+----+----------------+| 1 | 1 || 2 | 0 || 3 | 1 || 4 | 1 || 5 | 1 || 6 | 0 || 7 | 1 |+----+----------------+7 แถวในชุด (0.00 วินาที)

นี่คือแบบสอบถามเพื่อเปลี่ยนค่าจาก 1 เป็น Y แบบสอบถามมีดังนี้:

mysql> เลือก if(isValidAddress,'Y',isValidAddress) เป็นคำตอบจาก changeValuefrom1toY;

ต่อไปนี้เป็นผลลัพธ์:

<ก่อนหน้า>+---------+| ตอบ |+-------+| Y || 0 || Y || Y || Y || 0 || Y |+-------+7 แถวในชุด (0.00 วินาที)