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

มีวิธีใช้ค่าจากวัตถุ JSON ในคำสั่ง MySQL Select หรือไม่


ใช่ คุณสามารถใช้ json_extract() ให้เราสร้างตารางก่อน -

mysql> สร้างตาราง DemoTable -> ( -> Data json -> );ตกลง ตกลง 0 แถวได้รับผลกระทบ (0.63 วินาที)

แทรกระเบียนบางส่วนในตารางโดยใช้คำสั่ง insert -

mysql> แทรกลงในค่า DemoTable ('{"Name":"John", "CountryName":"US"}'); ตกลง ตกลง 1 แถวที่ได้รับผลกระทบ (0.33 วินาที)mysql> แทรกลงในค่า DemoTable ('{ "Name":"Chris", "CountryName":"UK"}');แบบสอบถามตกลง ได้รับผลกระทบ 1 แถว (0.15 วินาที)

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

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

ผลลัพธ์

<ก่อนหน้า>+--------------------------------------+| ข้อมูล |+---------------------------------------------------+| {"Name":"John", "CountryName":"US"} || {"ชื่อ":"คริส", "ชื่อประเทศ":"สหราชอาณาจักร"} |+------------------------------------- ---------+2 แถวในชุด (0.01 วินาที)

ต่อไปนี้เป็นแบบสอบถามเพื่อใช้ค่าจากวัตถุ JSON ในคำสั่ง MySQL Select -

mysql> SELECT *จาก DemoTable โดยที่ json_extract(ข้อมูล '$.CountryName') เช่น '%US%';

ผลลัพธ์

<ก่อนหน้า>+---------------------------------------+| ข้อมูล |+--------------------------------------+| {"Name":"John", "CountryName":"US"} |+------------------------------------- --------+1 แถวในชุด (0.00 วินาที)