Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > มีปัญหาเกี่ยวกับ Query MySQL ครับ โดยมีเงื่อนไขซ้อนกัน



 

มีปัญหาเกี่ยวกับ Query MySQL ครับ โดยมีเงื่อนไขซ้อนกัน

 



Topic : 083430

Guest




สมมุตินะครับผมมีข้อมูล ดังนี้

customer value

ก 10

ก 7

ข 9

ค 6


โดยผมต้องการดึงข้อมูลที่มี value สูงสุด 2 อันดับแรก และ จะใส่เงื่อนไขเพิ่มคือดูจาก customer ด้วยอาจจะเข้าใจยากหน่อย

สมมุติ ผมต้องการดึงข้อมูลของ customer = ก ผลลัพธ์ที่ได้จะต้องออกมา

ก ,10

เพราะ ก,7 มันไม่อยู่ใน value สูงสุด 2 อันดับแรก

รบกวนด้วยครับขอบพระคุณสำหรับทุกคำตอบครับ



Tag : MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-09-04 16:17:16 By : ผู้สงสัย View : 2036 Reply : 10
 

 

No. 1



โพสกระทู้ ( 74,058 )
บทความ ( 838 )

สมาชิกที่ใส่เสื้อไทยครีเอท

สถานะออฟไลน์
Twitter Facebook

Code
SELECT * FROM table WHERE customer = 'ก' ORDER BY value DESC LIMIT 0,2







แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-04 21:14:22 By : mr.win
 


 

No. 2

Guest


ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.win เมื่อวันที่ 2012-09-04 21:14:22
รายละเอียดของการตอบ ::
ผลลัพธ์จะได้
ก 10
ก 7

แต่ที่ผมอยากได้คือ
ก 10
เพราะค่า value สูงสุด 2 อันดับแรกคือ ก 10 กับ ข 9 น่ะ ครับ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-06 11:34:10 By : ผู้สงสัย
 

 

No. 3

Guest


ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.win เมื่อวันที่ 2012-09-04 21:14:22
รายละเอียดของการตอบ ::
SELECT * FROM table WHERE customer = 'ก' ORDER BY value DESC LIMIT 0,2


ผลลัพธ์จะได้
ก 10
ก 7

แต่ที่ผมอยากได้คือ
ก 10
เพราะค่า value สูงสุด 2 อันดับแรกคือ ก 10 กับ ข 9 น่ะ ครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-06 11:36:03 By : ผู้สงสัย
 


 

No. 4



โพสกระทู้ ( 446 )
บทความ ( 0 )



สถานะออฟไลน์


ยากจังเลย


ประวัติการแก้ไข
2012-09-06 14:54:03
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-06 14:47:09 By : sambrazil
 


 

No. 5



โพสกระทู้ ( 446 )
บทความ ( 0 )



สถานะออฟไลน์


Code
SELECT DISTINCT(customer),value FROM table ORDER BY value DESC,customer ASC LIMIT 0,2



ประวัติการแก้ไข
2012-09-06 15:16:32
2012-09-06 15:56:15
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-06 14:56:47 By : sambrazil
 


 

No. 6



โพสกระทู้ ( 314 )
บทความ ( 0 )



สถานะออฟไลน์


ผมก็งงกับคำถามของคุณเหมือนกันนะครับ ....
ผมเข้าใจว่า....
1. ต้องการหาข้อมูลที่สูงสุด 2 อันดับแรก
2. ต้องการให้แสดงได้ตามเงื่อนไขฟิลดิ์ customer ด้วยว่าต้องการอะไรใช่มั้ยครับ

เพราะฉะนั้นในตัวอย่างจะต้องได้ข้อมูลคือ ก 10 และ ข 9
โดยที่เงื่อนไขที่สองคือต้องการเลือกได้ว่าจะเอา ก หรือ ข (ซึ่งในที่นี้ทดสอบโดย ก)
ถ้าผมเข้าใจถูกต้อง ผลลัพธ์ทุกครั้งจะมีค่าเดียวที่แสดงออกมาใช่มั้ยครับ
โดยขึ้นอยู่กับเงื่อนไขที่ 2 ว่าต้องการอะไร......

SELECT * FROM (SELECT * FROM table_name ORDER BY value DESC LIMIT 2) as q1 WHERE q1.customer = 'ก'

ตามข้างบนนี้จะได้ค่าออกมา 1 ค่าหรืออาจจะไม่มีเลย ตามเงื่อนไข customer = 'ก'
ซึ่งเราสามารถเปลี่ยนตรงตัวอักษร 'ก' เป็นอะไรก็ได้ตามต้องการ

หลักการก็คือ เลือกข้อมูล 2 อันดับแรกออกมาก่อน แล้วค่อยเลือกตามเงื่อนไขที่ 2


ประวัติการแก้ไข
2012-09-06 16:44:55
2012-09-06 16:45:32
2012-09-06 16:46:13
2012-09-07 18:49:32
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-06 16:44:00 By : Songkram
 


 

No. 7

Guest


ต้องขอโทษด้วยคำถามอาจจะ งง เพราะผมอาจใช้ภาษาไทยไม่เก่ง แต่ขอบคุณทุกคำตอบครับ ^^
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-07 14:57:14 By : ผู้สงสัย
 


 

No. 8



โพสกระทู้ ( 288 )
บทความ ( 0 )



สถานะออฟไลน์


Code
SELECT * FROM table GROUP BY customer ORDER BY value DESC LIMIT 0,2

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-09-07 15:22:16 By : ทองมี
 


 

No. 9

Guest


Logic ง่าย ๆ ดูเหมือนยาก ขอบคุณคำแนะนำเพิ่มเติม จากคุณ Noom ครับ
SQL > Command Sub Selection

ของผมต้องการ Order by ซ้อนกัน 2 ครั้ง

SELECT * FROM (SELECT * FROM job WHERE `id_sector` = '1' AND `show` = 'yes' ORDER BY `id` DESC) AS JobOrder
ORDER BY `sort` DESC 


https://www.thaicreate.com/php/forum/083430.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-26 17:49:51 By : NB
 


 

No. 10



โพสกระทู้ ( 1,994 )
บทความ ( 10 )



สถานะออฟไลน์
Facebook Blogger

ตอบความคิดเห็นที่ : 5 เขียนโดย : sambrazil เมื่อวันที่ 2012-09-06 14:56:47
รายละเอียดของการตอบ ::
แบบนี้น่าจะใช้ได้

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2014-08-27 07:32:38 By : {Cyberman}
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : มีปัญหาเกี่ยวกับ Query MySQL ครับ โดยมีเงื่อนไขซ้อนกัน
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 03
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่