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,027

HOME > Client Script Forum > ต้องการเลือกข้อมูลที่มากที่สุด ใน account นั้นๆ ออกมาแสดงเพียงแค่1 (JavaScript)



 

ต้องการเลือกข้อมูลที่มากที่สุด ใน account นั้นๆ ออกมาแสดงเพียงแค่1 (JavaScript)

 



Topic : 136312



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



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




ถ้าต้องการเลือกข้อมูลที่มากที่สุด ใน account นั้นๆ ทำยังไงคะ
เพราะตอนนี้ account 1 account สามมารถแสดงข้อมูลได้หลายอันเลยค่ะ
ต้องการหาค่าที่สูงที่สุดแล้ว แล้วเลือก ทำยังไงได้บ้างคะ



Tag : JavaScript, Node.js, WebServices, Python









ประวัติการแก้ไข
2021-08-09 15:06:18
Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2021-08-06 17:51:18 By : natchaauk View : 745 Reply : 21
 

 

No. 1



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



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


ไม่รู้ข้อมูลตรงไหนที่จะเลือก งั้นลองดู Math.max() หาค่าตัวเลขมากสุด https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/max






แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-06 18:44:34 By : mr.v
 


 

No. 2



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



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


ตอบความคิดเห็นที่ : 1 เขียนโดย : mr.v เมื่อวันที่ 2021-08-06 18:44:34
รายละเอียดของการตอบ ::
คือหนูเรียงลำดับไว้แล้วค่ะ แต่ทีนี้ account_name มันออกมาซ้ำกัน มีวิธีเลือก account_name ที่มีค่ามากที่สุดไหมคะเอาแค่ข้อมูลเดียวต่อ account_name

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-07 12:29:38 By : natchaauk
 

 

No. 3



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



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


ตอบความคิดเห็นที่ : 2 เขียนโดย : natchaauk เมื่อวันที่ 2021-08-07 12:29:38
รายละเอียดของการตอบ ::
ขอถามซ้ำกับ No.1 ว่า ข้อมูลอะไรของ account_name
ที่ออกมาซ้ำกัน และต้องการค่ามากที่สุด...ขยายความเพิ่มเติมได้หรือไม่
อย่าลืมว่าคนอื่นไม่ได้อยู่ที่หน้าจอด้วย บางทีเข้าไม่ถึงสิ่งที่จะสื่อ เพียงแค่การจินตนาการ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-07 15:27:24 By : TheGreatGod_of_Death
 


 

No. 4



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



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


ตอบความคิดเห็นที่ : 3 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-07 15:27:24
รายละเอียดของการตอบ ::
ขอโทษนะคะที่ถามไม่ชัดเจน คือหนูต้องการนำคำตอบที่เรียงกันในตัวแปร ans มาแสดง 10 อันดับ
แต่ติดตรงที่ว่า 10 ลำดับนี้มีชื่อผู้ใช้ซ้ำกัน
เช่นนาย a มีผลลัพธ์ 56
นาย a มีผลลัพธ์ 58
นาย a มีผลลัพธ์ 60
นาย b มีผลลัพธ์ 61
นาย c มีผลลัพธ์ 62
นาย c มีผลลัพธ์ 63

ถ้าต้องการให้แสดงเพียงแค่ นาย a มีผลลัพธ์ 60 และก็ นาย c มีผลลัพธ์ 63 ต้องทำยังหรอคะ ขอบคุณค่ะ




ประวัติการแก้ไข
2021-08-07 20:47:57
2021-08-07 20:51:23
2021-08-07 20:53:59
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-07 20:45:45 By : natchaauk
 


 

No. 5



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



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


https://mongodb.github.io/node-mongodb-native/api-generated/collection.html#group

ถ้าใช้ group จะได้หรือเปล่า? ไม่เคยใช้ mongo db
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-08 00:31:35 By : mr.v
 


 

No. 6



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



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


Code (JavaScript)
.find({}).sort("account_name":-1).limit(1)

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-08 12:46:18 By : TheGreatGod_of_Death
 


 

No. 7



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



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


ตอบความคิดเห็นที่ : 6 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-08 12:46:18
รายละเอียดของการตอบ ::
แล้วถ้าเป็นคิวรี่แบบนี้ต้องใส่ .sort({'..':-1}) ยังไงหรอคะให้มันไม่ error TT



ประวัติการแก้ไข
2021-08-13 14:06:19
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-08 14:54:48 By : natchaauk
 


 

No. 8



โพสกระทู้ ( 9,559 )
บทความ ( 2 )



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


ไม่เคยเขียน mongoDB เหมือนกัน

แต่คิดว่า sql statement มาตรฐาน ก็คงใช้ได้

Code (SQL)
select fm.* from tablename fm, (
  select max(m.id) x 
  from (select user_id, max(amt) mx from tablename group by user_id) as t 
  left join tablename as m on m.user_id = t.user_id and t.mx=m.amt
  group by user_id) tx
where fm.id=tx.x



1 หาค่า user_id และค่า max ของ field ที่ต้องการ
2 กรณีที่ มี่ user_id ซ้ำกัน และค่ารวมซำกันอีก ก็ต้องเลือกมา 1 รายการ จาก id โดยนำค่าล่าสุดมาใช้(หรือค่าแรกก็ว่ากันไป)

นี่แค่ตัวอย่างเท่านั้นนะครับ ต้อง generate sql statement ให้ได้ตามนี้


ประวัติการแก้ไข
2021-08-08 15:33:08
2021-08-08 15:37:22
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-08 15:31:09 By : Chaidhanan
 


 

No. 9



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



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


ตอบความคิดเห็นที่ : 7 เขียนโดย : natchaauk เมื่อวันที่ 2021-08-08 14:54:48
รายละเอียดของการตอบ ::
ขอดูโค้ดที่ใส่ sort และ error ที่เกิด แบบไม่ใช่รูปภาพด้วย

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-08 15:59:36 By : TheGreatGod_of_Death
 


 

No. 10



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



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


https://mongodb.github.io/node-mongodb-native/markdown-docs/queries.html#query-options
ดูหัวข้อ Query options

Code (JavaScript)
var options = {
    "limit": 20,
    "skip": 10,
    "sort": "title"
}

collection.find({}, options).toArray(...);


การ sort
Code (JavaScript)
{
  "sort": [['field1','asc'], ['field2','desc']]
}

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-08 16:08:02 By : TheGreatGod_of_Death
 


 

No. 11



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



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


ตอบความคิดเห็นที่ : 10 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-08 16:08:02
รายละเอียดของการตอบ ::
https://stackoverflow.com/questions/2218999/how-to-remove-all-duplicates-from-an-array-of-objects
ถ้าใช้เป็น function แบบนี้ได้ไหมคะ หรือเป็นคิวรี่ได้อย่างเดียว



ประวัติการแก้ไข
2021-08-09 10:56:12
2021-08-09 11:02:11
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 09:54:51 By : natchaauk
 


 

No. 12



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



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


Native JS ใชได้กับ JS ทุกตัว แม้แต่ Node.js แต่คุณต้องเช็คค่า max เอง
ที่ผมให้ลิงค์ไปเป็นของสำเร็จเขา implement มาให้แล้ว ไม่ต้องไปเขียนเอง
แค่ใส่ option ในรูปแบบ JSON string ก็ได้แล้ว

อีกอย่างการใช้ฟังก์ชันจะทำงานช้ากว่า เพราะมันจะไล่เช็คทีละค่า จนครบทุกค่าก่อนรีเทิร์น
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 12:35:04 By : TheGreatGod_of_Death
 


 

No. 13



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



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


ตอบความคิดเห็นที่ : 12 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-09 12:35:04
รายละเอียดของการตอบ ::
ตอนนี้เรียงลำดับได้แล้วค่ะ เหลือแค่ดึงชื่อที่ซ้ำกันออกมาค่ะ
ใช้อันนี้หรือป่าว
posts = pointer_to_collection;
posts.find({author:"Daniel"}).toArray(function(err, results){
console.log(results); // output all records
});



ประวัติการแก้ไข
2021-08-09 12:53:58
2021-08-09 13:19:46
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 12:51:52 By : natchaauk
 


 

No. 14



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



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


สมมติ
Code (JavaScript)
db.employees.find({})


ได้
Code
{ "_id" : ObjectId("5f2cfbcf0694cb7ba344f46b"), "employeeId" : 1, "employeeName" : "Anand" } { "_id" : ObjectId("5f2cfbd80694cb7ba344f46c"), "employeeId" : 2, "employeeName" : "Wayne" } { "_id" : ObjectId("5f2cfbf10694cb7ba344f46d"), "employeeId" : 3, "employeeName" : "Clark" } { "_id" : ObjectId("5f2cfc050694cb7ba344f46e"), "employeeId" : 2, "employeeName" : "Juan" } { "_id" : ObjectId("5f2cfc3b0694cb7ba344f46f"), "employeeId" : 3, "employeeName" : "Naval" }


เอาเฉพาะ employeeId = 2, 3 (1 ไม่ซ้ำ)
ใช้ aggregate -> $group + $match
Code (JavaScript)
db.employees.aggregate([{
    $group: {
        _id: "$employeeId",
        "dups": {
            "$push": "$_id"
        },
        count: {
            $sum: 1
        }
    }
}, {
    $match: {
        count: {
            "$gt": 1
        }
    }
}, {
    $sort: {
        count: -1
    }
}]);


จะได้
Code
{ "_id" : { "employeeId" : 3 }, "uniqueIds" : [ ObjectId("5f2cfc3b0694cb7ba344f46f"), ObjectId("5f2cfbf10694cb7ba344f46d") ], "count" : 2 } { "_id" : { "employeeId" : 2 }, "uniqueIds" : [ ObjectId("5f2cfc050694cb7ba344f46e"), ObjectId("5f2cfbd80694cb7ba344f46c") ], "count" : 2 }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 13:18:31 By : TheGreatGod_of_Death
 


 

No. 15



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



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


ตอบความคิดเห็นที่ : 14 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-09 13:18:31
รายละเอียดของการตอบ ::
ขอบคุณมากเลยค่ะ ขอถามอีกนิดนะคะ $push คือตัดออกจากดาต้าเบสเลยไหมคะหรือแค่ไม่เลือกเฉยๆ

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 13:22:04 By : natchaauk
 


 

No. 16



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



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


$push เป็นแค่ส่วนประกอบ เป็นการรีเทิร์น array จากผลลัพธ์ ที่ได้จสกการ query
อ่่านเพิ่มเติมได้ที่ https://docs.mongodb.com/manual/reference/operator/aggregation/push/

ส่วนที่สำคัญคือ
Group รวมกลุ่มค่าซ้ำและไม่ซ้ำ
Match เลือกเฉพาะกลุ่มที่ซ้ำกันตามจำนวนที่ระบุใน count ในที่นี้คือ เอาเฉพาะกลุ่มที่ซ้ำกันมากกว่า 1

Code
$match: { count: { "$gt": 1 } }

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 13:34:39 By : TheGreatGod_of_Death
 


 

No. 17



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



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


ตอบความคิดเห็นที่ : 16 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-09 13:34:39
รายละเอียดของการตอบ ::
มันต้องแสดงแค่ ans = 5
ลองโค๊ดค้างบนแล้วก็ยังไม่ได้เลยค่ะ TT



ประวัติการแก้ไข
2021-08-09 14:10:43
2021-08-13 14:06:51
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 14:09:31 By : natchaauk
 


 

No. 18



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



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


สร้างตารางใหม่ insert ให้เหมือนตัวอย่าง และทดสอบตาม No.14
ได้ผลเหมือนกันหรือไม่
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 14:17:06 By : TheGreatGod_of_Death
 


 

No. 19



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



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


Code (JavaScript)
db.employees.insertOne({employeeId: 1, employeeName: "Anand"})
db.employees.insertOne({employeeId: 2, employeeName: "Wayne"})
db.employees.insertOne({employeeId: 3, employeeName: "Clark"})
db.employees.insertOne({employeeId: 2, employeeName: "Juan"})
db.employees.insertOne({employeeId: 3, employeeName: "Naval"})

แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 14:20:58 By : TheGreatGod_of_Death
 


 

No. 20



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



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


ตอบความคิดเห็นที่ : 19 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-09 14:20:58
รายละเอียดของการตอบ ::
... ใส่ความคิดเห็นตรงนี้....... ตอบความคิดเห็นที่ : 19 เขียนโดย : TheGreatGod_of_Death เมื่อวันที่ 2021-08-09 14:20:58
รายละเอียดของการตอบ ::
ถ้าดาตาเบสมันเปลี่ยนไม่ได้ละคะ



แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 14:32:46 By : natchaauk
 


 

No. 21



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



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


ไม่ได้ให้เปลี่ยน database ครับ
แค่สร้างมาเพื่อทดสอบคำสั่งพื้นฐาน
มีเครื่องตัวเองใช้หรือไม่ เราจะสร้างอะไรก็ได้
ทำแบบง่ายๆ ไปก่อนค่อยนำไปประยุกต์กับของจริง

ผมแค่อยากรู้ว่าคุณรู้จัก JS มากแค่ไหนแค่นั้นเอง

ถ้าใช้แก้ production ของบริษัทก็ จบ
แสดงความคิดเห็นโดยอ้างถึง ความคิดเห็นนี้
Date : 2021-08-09 14:50:28 By : TheGreatGod_of_Death
 

   

ค้นหาข้อมูล


   
 

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