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 > สอบถามปัญหาคำสั่ง SQL เกี่ยวกับการแปลงชนิดข้อมูลตอนเรียงลำดับด้วย order by หน่อยครับ



 

สอบถามปัญหาคำสั่ง SQL เกี่ยวกับการแปลงชนิดข้อมูลตอนเรียงลำดับด้วย order by หน่อยครับ

 



Topic : 053215



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



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



คือว่าตอนนี้ผมมีปัญหาครับ ผมใช้ภาษา PHP ติดต่อกับฐานข้อมูล Access ปัญหามีอยู่ว่า
คือผมสร้าง table ชื่อ prename ไว้สำหรับเก็บข้อมูลคำนำหน้าชื่อ ประกอบด้วย ฟิลด์ pn_code (ชนิด text เป็น PrimaryKey) , pn_shortname (ชนิด text หมายถึงชื่อย่อ) , pn_name (ชนิด text หมายถึงชื่อเต็ม)
ข้อมูลทั้งหมดมีประมาณ 100 กว่าเรคคอร์ด เมื่อก่อนเวลาผม select * from prename order by pn_code แบบนี้ไม่มีปัญาอะไร

แต่ปัญหามันเกิดขึ้นตอนหลังคือผมได้เพิ่มฟิลด์ pn_seq ขึ้นมา เพื่อใช้เป็นฟิลด์เรียงลำดับ แต่ว่ากำหนดเป็นชนิด Number เพราะฉะนั้น 100 กว่า เรคคอร์ดของผม ก็จะต้องมีฟิลด์นี้ขึ้นมาแล้วก็เป็นค่าว่าง ๆ ไว้ ผมก็ลองใส่ค่าให้กับฟิลด์ pn_seq ไปประมาณ 5 ฟิลด์ คือใส่เลข 1 ถึง 5 พอผมจะ select ผมก็เขียนแบบนี้

select * from prename
order by pn_seq,pn_code

ผลปรากฏว่า ไอ้ฟิลด์ที่ผมไม่ได้ใส่ค่า pn_seq กลับขึ้นไปเรียงก่อน ส่วนฟิลด์ที่ผมใส่ค่าไป 1 ถึง 5 ก็ไปเรียงลำดับ 1 หนึ่ง 5 ที่ท้ายสุดของเรคคอร์ด ผมเลยอยากถามว่า ผมจะทำไงให้ 5 เรคคอร์ดแรกที่ผมใส่ค่าไป เรียงลำดับ เอา pn_seq ค่าเท่ากับ 1 ขึ้นก่อน แล้วก็ตามด้วย 2 ไปเรื่อย ๆ จนถึง 5 แล้วค่อยตามด้วยฟิลด์ที่ค่า pn_seq ว่าง ๆ

ขอคำชี้แนะด้วยนะครับ ผมไม่แน่ใจว่าที่ผมอธิบายไปพอจะอ่านเข้าใจหรือเปล่า

ขอบคุณนะครับ



Tag : PHP, Ms Access, HTML/CSS, JavaScript







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2010-12-15 21:20:36 By : บอย View : 978 Reply : 5
 

 

No. 1



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



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


มันเรียง ลำดับ โดยเอาค่า null ขึ้นก่อน แล้วค่อยเรียง 1 to 5

ถ้าจะเอาสิ่งที่มีค่าก็ใส่เงื่อนไขเพิ่มครับ

select * from prename
where pn_seq is not null
order by pn_seq,pn_code

ลองดูนะครับ
ไม่รู้ตรงใจหรือป่าว






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-15 22:47:06 By : taobsd
 


 

No. 2



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



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

ถ้าแบบ select * from prename
where pn_seq is not null
order by pn_seq,pn_code

ส่วนทีเป็นค่าว่าง ๆ ก็ไม่มาแสดงด้วยน่ะสิ่ครับ ผมต้องการให้มาแสดงด้วย
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-16 08:32:44 By : pbboy100
 

 

No. 3



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



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

เคยมีคนแนะนำว่าให้ใช้พวกคำสั่งแปลงค่า คล้าย ๆ พวก CInt() , TO_NUMBER() ตอน order by แต่ผมลองหมดแล้วยังไม่ได้ หรือว่า Access มันใช้คนละอย่าง ผมก็ไม่แน่ใจ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-16 11:36:23 By : pbboy100
 


 

No. 4



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



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

SELECT * FROM `prename` order by case when pn_seq = 0 then 999 else pn_seq is null end, pn_code

ลองดูครับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-16 12:56:23 By : p_latplee
 


 

No. 5



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



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

ยังไม่ได้อ่ะคับ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2010-12-16 13:28:56 By : pbboy100
 

   

ค้นหาข้อมูล


   
 

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