我有一个包含column1和column2以及其他列的表吗?
我需要对从column1和column2获取的所有行进行唯一值计数。 可能的查询: 从中选择count(*) ((从表1中选择不同的列1)UNION (从表1中选择不同的column2));
我还需要按如下方式在所有行中计数唯一值: “ column1” +“-” +“ column2” “ column2” +“-” +“ column1”
可能的查询: 从中选择count(*) ((从表1中选择不同的列1,列2)UNION (从表1中选择不同的column2,column1))
我认为这两个查询都可能存在缺陷。
样本数据:
第1栏第2栏 值1 null 空值1 值1值2 值2值1 值4空 Value5 null
查询1的结果:4(值1,值2,值4,值5) 查询2的结果:5(Value1,Value1-Value2,Value2-Value1,Value4,Value5)
Null将被忽略,连字符被排除在外。或连字符可以忽略。连字符并不具体。
答案 0 :(得分:0)
听起来像您需要类似的东西
# NOTE: Overriding the default method
def clean(self):
cleaned_data = super().clean()
source = str(cleaned_data['source'])
destination = str(cleaned_data['destination'])
quantity_moved = cleaned_data['quantity_moved']
item = cleaned_data['item']
# Checking if the quantity to move is more than the current stock at the source location
max_qty = ActualStock.objects.filter(item=item, location=cleaned_data['source'])[0].current_stock
print(">" * 80, max_qty)
if quantity_moved > max_qty:
msg = "エラー:移動元に商品の数は足りません。現在, {0}に {1}の数は {2} です。".format(source, item, max_qty)
self.add_error('quantity_moved', msg)
# Checking if the source and destination are same
if destination == source:
msg = 'エラー:移動先と移動元が同じです。'
self.add_error('source', msg)
self.add_error('destination', msg)
return cleaned_data