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 > โครงสร้างข้อมูลแบบนี้ ต้องเขียน select อย่างไรครับ



 

โครงสร้างข้อมูลแบบนี้ ต้องเขียน select อย่างไรครับ

 



Topic : 071286

Guest




ขอความช่วยเหลือหน่อยนะครับ
ในฐานข้อมูลผมมีข้อมูล(อย่างย่อ)ดังนี้

ฐานข้อมูล

กำลังเขียน web php ให้ค้นหา product ตามที่เราใส่คำค้นเข้าไปได้อยู่ เช่นค้นหาจากสี
ถ้าอยากหาว่า product ที่มี 2 สีนี้อยู่ในตัวเดียวกัน มี product อะไรบ้าง
จะเขียน code SQL อย่างไรครับ

ตามตาราง ถ้าจะหา product ที่มีสีขาวกับเขียวอยู่ในตัวเดียวกัน
ผลลัพธ์ควรจะโชว์แค่ P_id 1 แค่ตัวเดียว ไม่ใช่ 2

ลองคิดเองดูแล้ว
ต้องค้นหา product ที่มีสีขาวก่อน แล้วเอาผลการค้นหานั้นมาหาสีเขียวอีกที ก็จะได้
แต่ไม่ทราบว่า code จะเป็นอย่างไรครับ (ยังไม่เคยเขียนแบบนี้เลย ปกติ Select ทีเดียวรู้เรื่อง)
แล้วสามารถเขียนโดยใช้ Select แค่ครั้งเดียวได้มั้ยครับ



Tag : PHP, MySQL







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2012-01-04 15:04:18 By : มือใหม่หัด dev View : 998 Reply : 8
 

 

No. 1

Guest


เงื่อนไขก็ต้องไปเล่นกับ WHERE ครับ มีหลายเงื่อนไข ก็เชื่อมด้วย AND กับ OR ครับ เช่น WHERE P_Color.P_id =1 AND P_Color.C_id < 3 อะไรคล้ายๆอย่างนี้ครับ






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 15:27:51 By : phoenekia
 


 

No. 2

Guest


หาด้วย AND มันก็ออกมาเป็น Null สิครับ หาด้วย OR ผลลัพธ์มันก็โชว์ P_id 2 ด้วย
หาด้วย <3 นี่ก็เกินไปครับ เฮ้อ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 15:39:37 By : มือใหม่หัด dev
 

 

No. 3



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



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


ต้องเอา product มาอยู่ในเงื่อนไขด้วยครับ ต้องกำหนดเลยว่าเป็นพรม หรือ วอลเปเปอร์ครับ หรืออีกทีก็เปลี่ยนวิธีเก็บใหม่
เช่น
p_id | c_id
1 | 1,2
2 | 1,3
อะไรแบบนี้อ่ะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 16:15:52 By : tiewphopum
 


 

No. 4

Guest


พรมและวอลเปเปอร์มันก็มีหลายสีนะครับ
ตรงนี้ผมผิดเอง น่าจะเปลี่ยนเป็น พรม1 พรม2

การเปลี่ยนวิธีเก็บ ไม่เหมาะสมนะครับ อย่างนั้นจะทำให้ข้อมูลซ้ำซ้อนกัน
นี่เป็นข้อมูลแบบ 1-M
ถ้าเก็บรวมกันมันจะยิ่งค้นหาได้ยากขึ้น ค้นแต่ละทีมันต้องมาตัดสตริง มันจะช้าลงนะ
อีกอย่างมันจะค้นหาไม่เจอได้ทั้งที่เงื่อนไขตรงกัน เช่น ในฐานข้อมูลบันทึกเป็นสีขาว-เขียว แต่ผู้ใช้ค้นหาสีเขียว-ขาว มันจะหาไม่เจอนะครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 17:00:41 By : มือใหม่หัด dev
 


 

No. 5

Guest


แบบนี้เลย แล้วก็ดูเรื่องของการ join ตารางนะ
https://www.thaicreate.com/tutorial/mysql-full-text-search.html
https://www.thaicreate.com/php/php-mysql-search-record.html
https://www.thaicreate.com/php/php-mysql-search-record-paging.html
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 17:20:17 By : บังเอิญผ่านมาเห็น
 


 

No. 6

Guest


อยากให้ดูข้อมูลที่กระทู้นะครับ นี่เป็นการค้นหา id ไม่ใช่ค้นหา string
สีมีหลายสี ที่ชื่อเหมือนกันก็มีเยอะ เช่น grey, grey 50%, grey 75% ลองเปิด MS Excel ดูครับ มีสีเยอะมาก
ถ้าจะหาแค่ grey แล้วใช้ LIKE มันก็เจอหมดเลยสิครับ

ไม่มีใครทราบเลยเหรอครับ T-T
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 17:43:13 By : มือใหม่หัด dev
 


 

No. 7

Guest


งั้นถามหน่อยนะ
1. ในหน้าเลือก ตัวเลือกที่ใช้เลือกน่ะแบบนี้ป่าวคือ
มี option ให้เลือกประเภทของ product และสี แบบนี้ แล้วก็ส่งค่าไปเรียกข้อมูลน่ะ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 19:28:33 By : บังเอิญผ่านมาเห็น
 


 

No. 8

Guest


ใช่แล้วครับ เป็นการค้นหาจากลักษณะต่างๆให้ไปเจอตัว Product
เมนูทุกอย่างเป็น drop-down menu ที่ดึงข้อมูลมาจากตารางแต่ละชนิดในฐานข้อมูล หน้าตาประมาณนี้

ค้นหาสินค้า

ยี่ห้อ [-เลือก-]v
ประเภท [-เลือก-]v
สี1 [-เลือก-]v . . . สี2 [-เลือก-]v . . . สี3 [-เลือก-]v . . . สี4 [-เลือก-]v
ลาย1 [-เลือก-]v . . . ลาย2 [-เลือก-]v . . . ลาย3 [-เลือก-]v . . . สี4 [-เลือก-]v

[ submit ]
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2012-01-04 22:19:42 By : มือใหม่หัด dev
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : โครงสร้างข้อมูลแบบนี้ ต้องเขียน select อย่างไรครับ
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ 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 00
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 อัตราราคา คลิกที่นี่