Django——数据库
class Book(models.Model):
book_name = models.CharField(max_length=20)
price = models.DecimalField(max_digits=5 , decimal_places=2)
inventory = models.IntegerField()
create_time = models.DateField(auto_now_add=True)
update_time = models.DateField(auto_now=True)
class Meta:
db_table = 'book'
Book.objects.create(book_name='白夜行' , price=98.95 , inventory=520)
Book.objects.create(book_name='挪威的森林' , price=80.6 , inventory=510)
Book.objects.create(book_name='解忧杂货店' , price=53.25 , inventory=623)
Book.objects.create(book_name='三体' , price=120.5 , inventory=630)
Book.objects.create(book_name='平凡的世界' , price=100.66 , inventory=100)
Book.objects.create(book_name='人生的枷锁' , price=75.98 , inventory=50)
Book.objects.create(book_name='追风筝的人' , price=46.33 , inventory=751)
Book.objects.create(book_name='月亮与六便士' , price=75.98 , inventory=60)
Book.objects.create(book_name='三国演义' , price=88.65 , inventory=751)
Book.objects.create(book_name='摆渡人' , price=30.12 , inventory=630)
get_data = Book.objects.all().values_list()
get_data = Book.objects.filter(book_name='三体')
get_data = Book.objects.get(id='6')
print(get_data)
print(get_data.book_name)
data = Book.objects.order_by('price')
for d in data:
print(d.book_name , d.price)
print('*'*20)
data = Book.objects.order_by('-price')
for d in data:
print(d.book_name, d.price)
print('*' * 20)
data = Book.objects.order_by('price').reverse()
for d in data:
print(d.book_name, d.price)
data = Book.objects.filter(price__gt=80)
data = Book.objects.filter(price__gte=75.98)
data = Book.objects.filter(price__lt=75.98)
print(data)
data = Book.objects.filter(price__lte=75.98)
print(data)
data = Book.objects.filter(inventory__range=(100 , 520))
print(data)
data = Book.objects.filter(book_name__startswith='追')
print(data)
data = Book.objects.filter(book_name__endswith='人')
print(data)
data = Book.objects.get(id=2)
data.price= 75.23
data = Book.objects.filter(id=5)
data = Book.objects.filter(id__in=[3 , 8 , 9])
data.update(inventory=300)
data = Book.objects.count()
print(data)
data = Book.objects.filter(price__gt=80).count()
print(data)
data = Book.objects.all()
print(data)
print(data[0:4])
data = Book.objects.filter(id__range=(0 , 4))
print(data)
print(data[2])
data = Book.objects.filter(price__gt=75 , inventory__gte=300)
data = Book.objects.filter(price__gt=75) & Book.objects.filter(inventory__gte=300)
data = Book.objects.filter(price__lt=75) | Book.objects.filter(inventory__gte=300)
print(data)
from django.db.models import Q
data = Book.objects.filter(Q(price__gt=75) & Q(inventory__gte=300))
data = Book.objects.filter(Q(price__lt=75) | Q(inventory__gte=300))
data = Book.objects.filter(~Q(price__lt=75))
print(data)
from django.db.models import F
data = Book.objects.get(id=10)
data.inventory = F('inventory') + 520
data.save()
from django.db.models import Max , Min , Sum , Avg
data = Book.objects.aggregate(Max('price'))
print(data)
data = Book.objects.filter(id__in=[1 , 5 , 7]).aggregate(Avg('price'))
print(data)
data = Book.objects.filter(id__in=[1, 5, 7]).aggregate(price = Avg('price'))
print(data)
data = Book.objects.get(id=4).delete()
print(data)
data = Book.objects.all().delete()
print(data)